2015-07-24 1 views
0

Я просто много узнал о том, как избежать включения «jQuery-min.js». Причина, по которой я думал, что мне нужно jQuery, было использовать $ ('someTag'). Это был только jQuery-звонок, который у меня был в моем документе.Включите стили для Javascript и включите другие стили для не-Javascript

Так что я спрятался и немного узнал о NodeLists с целью использования document.getElementsByTagName. См. Specify an array without jQuery and without NodeLists [SOLVED .. I think?]

Теперь я нашел Модернизатор, пытаясь включить определенные стили для Javascript и других стилей для не-Javascript.

Очевидно, что его размер микроскопичен по сравнению с jQuery-min.js ... но это другой файл Мне нужно включить. Кроме того, наличие Модернизатора устраняет кучу старых браузеров, которые все еще могут быть использованы. Небеса знают, что «не-js» и «js» классы очень привлекательны ... но другой файл ??

Итак ... без Модернизатора, как я могу включить определенные стили для Javascript и других стилей для не-Javascript ?? display:none и display:block являются аккуратными, но мне нужно динамически переключаться взад и вперед в зависимости от наличия Javascript.

Вклад идей был бы замечательным!

+0

чек '' querySelector' и querySelectorAll' тоже кстати, они делают CSS селекторы и возвращающие элементы. Поддерживается с IE8 изначально. –

ответ

2

Вы можете написать одну строку кода Javascript, чтобы добавить класс CSS для вашего <body> элемента:

document.body.classList.add('js'); 
+0

Это работает для современных браузеров. Если вы серьезно обеспокоены обратной совместимостью, вы можете сделать 'document.body.setAttribute ('class', document.body.getAttribute ('class') + 'js')' –

+0

или даже проще, 'document.body .className + = '"js"; 'должен работать waaaay назад. –

+0

@ AdamD.Ruppe: Вы забыли пространство. – SLaks

Смежные вопросы