Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Можно ли заккоментировать HTML и CSS с помощью JS? (https://javascript.ru/forum/dom-window/63448-mozhno-li-zakkomentirovat-html-i-css-s-pomoshhyu-js.html)

AlexKain 08.06.2016 10:00

Можно ли заккоментировать HTML и CSS с помощью JS?
 
Как закомментировать в HTML и CSS с помощью JavaScript? И можно ли вообще? Зачем это нужно: на странице есть некий HTML-JS-обьект, который подгружается, только когда это самый JS в браузере работает. Стили к нему заранее записаны (так как много места они не занимают) в CSS документе страницы среди других стилей. Там есть background с картинкой фона этого объекта. А зачем ее загружать (особенно если она большая), если отключен JS и обьект не будет загружен? Можно записать в сам JS код, но верстальщику или дизайнеру в случае чего будет сложно этот фон изменить. Выход - поместить в CSS background с нужным фоном и закомментить его - в результате он легко правится верстальщиком, а если загрузится объект - автоматически его раскомментировать. Вот только как это сделать?

Coriolan161 08.06.2016 22:57

AlexKain,
Попробуй покрутить document.createComment
Хотя может и не покатить

AlexKain 09.06.2016 17:46

Зашел на developer.mozilla, почитал про document.createComment, но там ни слова о том, как раскомментировать уже имеющийся. Плюс document, если не ошибаюсь, относится к HTML-файлу, комментровать нужно в .css. Что с этим делать?

ruslan_mart 09.06.2016 20:00

AlexKain, background и так не будет загружаться, если блок нигде не используется.

Coriolan161 09.06.2016 22:21

AlexKain,
Кот дело говорит.

По комментам: тебе не надо раскомментировать.

1) Коммент - это нода. У ноды есть nodeType и nodeValue. Даже nodeName)

2) Достаёшь папу коммента, перебираешь детей папы, сравниваешь их nodeType с 8.

3) Если ты знаешь, что коммент один, то надо брекать перебор

4) Если ты знаешь, что там дофига всяких левых комментов, то надо счетчик сделать и брекать когда попадешь на номер своего коммента. (номер надо знать, потому что по содержимому сравнивать бредово)

5) Дальше тебе надо взять nodeValue и сделать createElement, в который всё запихать, что достал

6) Когда у тебя всё получится, назовешь в честь меня своего сына. Кориоланом.

AlexKain 10.06.2016 16:45

Большое спасибо вам обоим. Теперь все ясно. Назову сына Кориоланом, дочь Русланой и подарю им обоим очки, как у кота на аватарке

AlexKain 10.06.2016 16:53

А, да, еще небольшое уточнение. Перебирать то в HTML я умею. А как попасть в отдельный CSS фаил? Через стандартный способ коррекции таблицы стилей document.styleSheets[номер].cssRules[номер]( возможно, + cssText)?


Часовой пояс GMT +3, время: 00:38.