>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Разработка http://forum.mozilla-russia.org/viewforum.php?id=18 >DOM Inspector - элементы красного цвета http://forum.mozilla-russia.org/viewtopic.php?id=61487 |
MySh > 05-01-2014 22:35:30 |
Почему в DOM Inspector некоторые элементы красного цвета? Они чем-то отличаются от обычных? |
Anton > 05-01-2014 23:10:56 |
MySh пишет
https://developer.mozilla.org/ru/docs/DOM_Inspector/DOM_Inspector_FAQ |
MySh > 06-01-2014 00:39:21 |
Anton |
Anton > 06-01-2014 02:29:37 |
MySh пишет
Ну, если считать "original document" "основным кодом", то, наверное, можно и так сказать. MySh пишет
В справке написано
MySh пишет
Вот ссылка, может по прочтении будет понятней: http://www.intuit.ru/studies/courses/11 … cture/5552. Кстати, в теме Русская документация по разработке на XUL есть ссылка на весь курс. |
MySh > 06-01-2014 20:52:27 |
Anton |
Anton > 06-01-2014 21:45:03 |
MySh пишет
Там термины, а тут носки, ситуация практически безвыходная. |
Infocatcher > 07-01-2014 00:33:16 |
MySh пишет
Вот есть исходный код документа, там прописаны какие-то тэги, они в DOM Inspector'е будут черными. А есть специальная технология под названием XBL, позволяющая привязать к нужным узлам дополнительное описание, в котором можно задать как поведение (реакцию на события типа кликов пользователя), так и внутренности. В результате можно написать в исходном коде <toolbarbutton />, а движок превратит это в Выделить код Код:<toolbarbutton> <xul:image class="toolbarbutton-icon" /> <xul:label class="toolbarbutton-text" /> </toolbarbutton> Вот эти image и label, которых не было в исходном коде, и будут анонимными (и DOM Inspector подсветит их красным). |
Anton > 07-01-2014 13:10:27 |
Infocatcher пишет
Если верить справке, то особенное отличие анонимных узлов не в том, что они определяются где-то в другом месте, а в том, что они находятся в другой области видимости, их родительские элементы о них ничего не знают, и к ним поэтому нельзя получить доступ обычными способами через childNodes, firstChild-nextSibling и т. п. И, похоже, что эти анонимные элементы хотя и по большей части, но не обязательно определяются через XBL. Например в элементах window и page есть анонимные элементы popupgroup и tooltip, также встречаются анонимные узлы _moz_generated_content_before/after, а XBL "исходников" для них в omni.ja не находится. |
MySh > 07-01-2014 16:28:17 |
Infocatcher
Спасибо, я примерно так и понял. Anton
Если верить DOM Inspector, для элемента tooltip вроде какие-то XBL-связки есть. Просмотрел ещё раз ссылки, почти все не работают или ведут не туда, но кое-что всё же нашёл: XUL.ru - О XUL и Mozilla - на русском языке и Создание расширений к Mozilla Firefox. Для начала уже неплохо. Но, как я понимаю, без знания JavaScript тут делать нечего. |
Anton > 07-01-2014 17:58:39 |
MySh пишет
Для привязки к элементам tooltip XBL-связки есть. А "исходников", которые создают анонимные элементы tooltip в элементах window и page - нет. |
MySh > 08-01-2014 21:10:29 |
Anton
А в DOM Inspector это где-нибудь можно увидеть? |
Anton > 09-01-2014 18:01:39 |
MySh пишет
Можно. |
MySh > 09-01-2014 22:18:27 |
Anton |
Anton > 12-01-2014 19:05:05 |
MySh пишет
Нежелание топикстартера видеть очевидные вещи понятно с первых сообщений, так что неудивительно. Вот в документах chrome://navigator/content/navigator.xul или chrome://browser/content/browser.xul у элемента window есть анонимные дочерние узлы popupgroup и tooltip. К этому элементу window привязан xbl chrome://global/content/bindings/general.xml#root-element, в котором не определяются ни popupgroup, ни tooltip. Вывод - похоже, что анонимные узлы создаются не одним только xbl. |
MySh > 13-01-2014 01:03:14 |
Anton
Спасибо, теперь стало ясно. То есть, надо смотреть в код этого самого chrome://global/content/bindings/general.xml#root-element, а из DOM Inspector этого не увидишь. скрытый текст
Всё проще: как говорится, «не стоит сразу видеть злой умысел в том, что вполне можно объяснить глупостью.» . Таки да, топикстартер — полный чайник (что он, кстати, никогда и не скрывал ) . Прошу прощения, если это так сильно раздражает. Спасибо всем отписавшимся! |
Anton > 13-01-2014 19:50:40 |
MySh пишет
Опять ты за свое Чтобы увидеть, что XBL не создает какой-то анонимный узел, не обязательно смотреть его код. Вот смотри: http://s020.radikal.ru/i716/1401/af/303dc47b8da2.png А вот: http://s019.radikal.ru/i614/1401/35/d6120a8c88c6.png слева window с анонимными popupgroup и tooltip, а справа - chrome://global/content/bindings/general.xml#root-element, но в контенте у него пусто. Но можно и код посмотреть, на скриншотах виден соответствующий пункт контекстного меню. |
MySh > 15-01-2014 01:09:49 |
Anton
Надо же, действительно, не заметил. И вроде как на самом виду — но для новичка совершенно неочевидно. Теперь буду знать, спасибо!
Ну да, я именно так и делал. |