новичку нужна помощь с циклом
Привет всем. Я написал крохотный скрипт для greasemonkey, который на лету меняет в все id товаров на один, нужный мне:
// ==/UserScript== document.getElementById("product_138649").value = "138503"; document.getElementById("product_138641").value = "138503"; document.getElementById("product_138491").value = "138503"; document.getElementById("product_138645").value = "138503"; document.getElementById("product_138653").value = "138503"; document.getElementById("product_138661").value = "138503"; document.getElementById("product_138671").value = "138503"; все работает, но иногда product_##### меняются, убираются магазином, и тогда скрипт не срабатывает, не найдя определенный product. Можно ли как-то сделать мою замену циклом, и с маской, чтоб value 138503 присваивался всем product_* ? Спасибо! |
var p = document.querySelectorAll('[id^=product_]');
Это коллекция. Далее можно ее и циклом for обойти и сотворить нужное. |
спасибо за быстрый ответ, попробую, хотя циклы еще не изучал, может получится
|
[].forEach.call(document.querySelectorAll('[id^=product_]'),function(node){
node.value=138503;
});
|
Nexus: потрясающе, спасибо, всё работает!
|
Привет все, такой вопрос, какой командой можно удалить всех моделей сайта кто в оффлайне, вот скриншот https://thumb.cloud.mail.ru/weblink/...npht%40mail.ru желтым я обвёл всех моделей у кого такой статус. Можно ли их всех скрыть, свернуть, не загружать? Просто их сотни и они очень тормозят при авторефреше, и подтягивают ненужную графику.. Мне в прошлый раз помогли алгоритмом поиска, вроде так должно сработать, но затык как раз в команде удаления всего что совпало с 'offline':
// ==UserScript==
// @name auto
// @namespace phonemates.com
// @include *[url]https://phonemates.com/myfavorites*[/url]
// @version 1
// @grant GM_openInTab
// ==/UserScript==
function getOfflineLinks() {
return Array.prototype.filter.call(
document.querySelectorAll('.hcm-hostNameWrapper + .hcm-rightBottomIcons .chatType'),
element => element.textContent.trim() === 'Offline'
).map(
element => element
.closest('.hcm-rightBottomIcons')
.previousElementSibling
)
}
исходник страницы: https://cloud.mail.ru/public/ugE3/YKrao836r на сайте 3 категории статусов, идут в очерёдности: free, private, и под конец offline (которых и хочется вовсе не подгружать, обрезать страницу до них). Спасибо! |
друзья-товарищи, подсобите пожалуйста, ведь там пару строчек всего кода. Сбил все руки-ноги, ничего не получается
|
bombino1,
function removeAndHideOffline() {
document.body.insertAdjacentHTML('beforeend', '<style>.layoutWrapper > .hc-offline{display: none}</style>');
document.querySelectorAll('.layoutWrapper > .hc-offline').forEach(
element => element.parentNode.remove()
)
}
removeAndHideOffline()
|
Огромное спасибо, как часы сработало, как и всегда!
|
Можно ли находясь в обычном режиме Firefox-a, открыть ссылку в JS именно в режиме incognito? Час гугления показал что windows.create() имеет ключ incognito, но синтаксис пишет ошибку в tampermonkey, возможно работает только в developer's add-on, спасибо большое!
|
| Часовой пояс GMT +3, время: 04:54. |