У меня проблема с UserScript в Chrome.Я уже давно использую версию этого расширения в Greasemonkey, но не могу понять, как разобрать NodeList в Chrome.Вот код, который есть в Greasemonkey (обратите внимание, что код на сайте действительно плохой, поэтому на него приходится большая часть моего кода:
for each (table in response) {
pre = table.getElementsByTagName('pre');
for each (tag in pre) {
if (findNotes.test(tag.textContent)) {
time = tag.parentNode.parentNode.parentNode.childNodes[0].childNodes[3].childNodes[3].textContent;
emailexp = new RegExp("*Excluded for anonymity*","g");
email = emailexp.exec(tag.textContent);
oldstr = "Note From: " + email;
newstr = '<p style="font-weight:bold">Note From: ' + email + "\t" + time + "</p>"
noteStr += tag.textContent.replace(oldstr, newstr);
noteStr += "\n";
var nodeToDelete = tag.parentNode.parentNode.parentNode.parentNode;
nodeToDelete.removeChild(nodeToDelete.childNodes[1]);
}
}
}
Проблема, с которой я столкнулся, заключается в том, что Chrome делаетне соблюдайте функциональность «для каждого». Итак, я смог изменить первую строку на:
response.forEach(function(table, index, array) {
Но вложенная для каждого - это та часть, которую я не могу заставить работать.Переменная - это NodeList, для которого я не могу использовать метод object.forEach.
Есть ли у кого-нибудь какие-либо предложения о том, как я могу сделать эту работу?это облегчило бы мою работу ( headdesk ).