Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.07.2014, 22:19
Профессор
Посмотреть профиль Найти все сообщения от newobject
 
Регистрация: 10.07.2014
Сообщений: 145

Как лучше добавить класс элементу?
В инете нашел два варианта:
document.getElementById('id').className +=" my-class"
document.getElementById('id').classList.add('class');

Правильно ли я понял, что 2-й вариант работает не на всех браузерах, только на новых, и лучше воспользоваться первым?

Последний раз редактировалось newobject, 20.07.2014 в 22:21.
Ответить с цитированием
  #2 (permalink)  
Старый 20.07.2014, 22:38
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,080

а типа в учебник заглянуть - это не по пацански
Цитата:
Свойство classList предоставляет удобный интерфейс для работы с отдельными классами.

Оно поддерживается во всех современных браузерах, в IE начиная с IE10, но его можно эмулировать в IE8+.
http://learn.javascript.ru/styles-and-classes#classlist

или глянуть поддержку http://caniuse.com/#search=classlist
Ответить с цитированием
  #3 (permalink)  
Старый 20.07.2014, 22:54
Аватар для Sakyra
Аспирант
Отправить личное сообщение для Sakyra Посмотреть профиль Найти все сообщения от Sakyra
 
Регистрация: 30.04.2013
Сообщений: 92

newobject,
я новенькая в этом деле но все же)))

я делаю это так
если есть основной блок
$(".osnovnoy-div(название class или id основного дива) div(или за место div любой другой элемент span или что то свое)[id*=id-esli-est'']").addClass('new-name-class').html();


как выглядит это
<div class="osnova-test"><div id="test1"></div></div>
<script>$(".osnova-test div[id*='test1']").addClass('new-names').html();</script>


после как скрипт обработает
<div class="osnova-test"><div id="test1" class="new-names"></div></div>


Строго не судите пожалуйста я только учусь))
Ответить с цитированием
  #4 (permalink)  
Старый 20.07.2014, 23:35
Профессор
Посмотреть профиль Найти все сообщения от newobject
 
Регистрация: 10.07.2014
Сообщений: 145

рони,
Спасибо огромное за ответ. Я просто думаю: а нахрен нужны эти извраты с эмуляцией и прочим, если первый вариант работает везде и без костылей? Или не везде?
Ответить с цитированием
  #5 (permalink)  
Старый 21.07.2014, 00:36
Аватар для ixth
Профессор
Отправить личное сообщение для ixth Посмотреть профиль Найти все сообщения от ixth
 
Регистрация: 19.01.2010
Сообщений: 354

Сообщение от newobject Посмотреть сообщение
рони,
Я просто думаю: а нахрен нужны эти извраты с эмуляцией и прочим, если первый вариант работает везде и без костылей?
ClassList — удобный интерфейс для работы со списком классов. Например, у тебя никогда не случиться такого:
<span class="hidden hidden">
Добавление класса — пол-дела, при помощи ClassList можно удобно удалять класс, делать toggle и проверять наличие заданного класса. Попробуй написать однострочники для всего указанного и поймешь нахрена оно надо.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как добавить методы объекту после конструирования. DragorWW Общие вопросы Javascript 23 21.01.2013 20:39
хотел как лучше, а получилось как всегда. Вопрос оптимизации 9xakep Общие вопросы Javascript 13 21.01.2013 17:27
помогите добавить class/id элементу magnateg Events/DOM/Window 39 19.11.2011 23:41
Как добавить свой блог в раздел feeds этого сайта IzumeRoot Ваши сайты и скрипты 13 30.10.2008 21:11
Добавить контент к последнему элементу Viper jQuery 0 11.10.2008 20:04