Страницы: 1
Нашел пример кода который меняет один элемент, а как сделать перебор тегов циклом и изменить те, у которых id подходит под условие.
var widgets = require("sdk/widget"); var tabs = require("sdk/tabs"); var widget = widgets.Widget({ id: "mozilla-link", label: "Mozilla website", contentURL: "http://www.mozilla.org/favicon.ico", onClick: function() { tabs.activeTab.attach({ contentScript: 'document.body.style.border = "5px solid red";' }) } });
Отредактировано LuckyD (25-03-2013 23:18:47)
Отсутствует
А что за задача конкретно?
Если что-то простейшее: по какому-то событию изменить стиль всех элементов с одинаковым классом на одинаковый другой стиль; то в данном случае никакой цикл и не нужен. А лучше всего будет при этом событии изменить, например, айдишник для боди, соответственно в стилях прописать правила для этого. Это рациональнее.
Отредактировано KooL (25-03-2013 23:45:38)
Отсутствует
Вот получилось что-то
function(color) { var alldivs=window.content.document.getElementsByTagName('div'); for (var i = 0; i < alldivs.length ; i++){ if (i < 10) { alert(alldivs[i].id); //????????????????? } }
например вставить блок между этими двумя тегами
<div class="block1">Текст блока 1</div> // ???????????????????????????????????????????? <div class="block2">Текст блока 2</div>
Отредактировано LuckyD (27-03-2013 00:05:43)
Отсутствует
Нашел ответ:
<script> function pasteMyHTML(id, html){ var element = document.getElementById(id); var tmp = document.createElement('DIV'); tmp.innerHTML = html; var childs = tmp.childNodes; for (var i = 0; i < childs.length; i++) element.parentNode.insertBefore(childs[i], element); element.parentNode.removeChild(element); } pasteMyHTML('here', (function(){ return '22222' })()); pasteMyHTML('and_here', eval('/*some js code here*/ "some string"')); </script>
Вот здесь хорошее обсуждение этого вопроса.
http://xpoint.ru/forums/programming/jav … 9674.xhtml
Отредактировано LuckyD (28-03-2013 12:09:49)
Отсутствует
Страницы: 1