1. JavaScript / Говнокод #7658

    +175

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    function showOrHide(id) {
    if(jQuery('#'+id).is(':hidden')) {
    jQuery('#'+id).show();
    } else {
    jQuery('#'+id).hide();
    }
    }

    rutube.ru, jQuery().toggle()

    Запостил: LoserJS, 26 Августа 2011

    Комментарии (20) RSS

    • И в остальном там столько говнокода
      Ответить
    • А где говнокод-то?
      Ответить
      • Наверное в том, что функция эквивалентна одной строке: jQuery('#'+id).toggle()
        Если уж использовать библиотеку, то зачем изобретать велосипед?
        Ответить
    • Пришел из rss плюсануть этот пост
      Ответить
    • Страшен даже не сам велосипед, а двойной вызов поиска элемента по id.
      Ответить
    • Кстати, если id еще и точку будет содержать, оно вообще не сработает.
      Ответить
      • Хм. Почему? Баг jquery?
        Ответить
        • Не баг, а вполне документированная особенность селекторов.
          #name.surname выбирает один элемент с id=name и имеющий класс surname. Чтобы этого не случалось, точку надо экранировать.
          http://api.jquery.com/category/selectors/
          Ответить
      • и не только точку
        Ответить
    • function showORhide(obj) {
      (obj.is(':hidden') ? obj.show() : obj.hide())
      }

      showORhide($('#xuj'));

      упрощаем говно
      Ответить
    • they are can`t into .toggle()
      Ответить
    • есть мнение что в архитектуре приложения предполагается (в последствии) обрабатывать события показа/сокрытия элемента дополнительными свистелками и перделками.
      Ответить

    Добавить комментарий