Advertisement
Guest User

Untitled

a guest
Jul 29th, 2015
306
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.60 KB | None | 0 0
  1. >>521135
  2.  
  3. Комментарии по коду:
  4.  
  5. > function addClass(el, addClass) {
  6. Что-то тут все переусложнено. Функция addClass пишется так:
  7.  
  8. if (!hasClass(..)) {
  9. element.className += ' ' + class;
  10. }
  11.  
  12. > el.hasAttribute('class')
  13. Проще использовать свойство element.className
  14.  
  15. > if (oldClassName.indexOf(addClass) > -1) return;
  16. неправильная проверка. Она найдет класс abc в атрибуте "abcdef abcghj", а его там нет
  17.  
  18. > var newClassName = oldClassName.slice(0, indexOfClass) +
  19. > oldClassName.slice(indexOfClass + removeClass.length)
  20. Какой-то перейсложеннный код, тут проще использовать регулярки либо разбить строку регуляркой на отдельные классы.
  21.  
  22. > for (var i=0; i < items.length; i++) {
  23. > items[i].addEventListener('click', function(){
  24. События всплывают. Не надо ставить 100500 обработчиков на каждый пункт списка, достаточно одного на сам спсиок: https://learn.javascript.ru/event-bubbling
  25.  
  26. > items[i].style['background-color'] = '';
  27. Лучше писать style.backgroundColor, а еще лучше не писать стили в яваскрипте, а просто добавлять класс.
  28.  
  29. > this.style['background-color'] = '#55b';
  30. По моему то что this указывает на кликнутый элемент, не гарантируется.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement