javascript tabs
Всем привет. Сегодня у меня нестандартный вопрос. Я решил реализовать табы на js (впервые). Их реализацию вы можете увидеть по ссылке
http://jsfiddle.net/zenrgu38/ Но лично мне кажется, что реализация хромает. каждый раз браузер обходит элементы в цикле - не очень эффективное решение. Мне интересно ваше мнение. Большое спасибо! =) Да, и забудем про то, что это не кроссбраузерно(getElementsByClassNam e, addEventListener and classList) ибо исправить это не такая большая проблема. Вопрос именно в реализации. |
реши через делегирование событий
Цитата:
|
para[0].classList.remove("hide"); Вот это явно не в цикле должно быть ) Этого вообще не должно быть. Че за дрочка - добавили класс hide - передумали, убрали класс hide )) По клику никаких циклов уже не должно быть. Ну не нужно добавлять класс hide элементам, которые уже и так его имеют. Добавляй его только нескрытому элементу. |
|
Вот и я с этого начинал велосипедить :)
Мои две реализации табов на jQuery http://jsfiddle.net/vlasenkofedor/82kSU/ на чистом JS http://jsfiddle.net/vlasenkofedor/jLprM/ Но совершенству нет предела, так что улучшайте |
Цитата:
Отсюда вопрос. Произвольный доступ можно ведь организовать на двух сущностях - current и previous - или практически нельзя? |
Цитата:
|
Цитата:
|
Цитата:
вот ты сохраняешь в переменную old первый параграф и скрываешь его при клике на link. как тогда скрываются другие параграфы? то есть para[1], para[2] и т.д. |
Smike,
в переменной old всегда находится элемент открытый в прошлый раз - перед открытием нового элемента -- элемент в old скрывается -- в него записывается новый и новый old открывается - так понятнее? |
Часовой пояс GMT +3, время: 11:53. |