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

    +167

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    function hasclass(e,c){
    has=false
    for(i=0;i<e.className.split(' ').length;i=i+1)
    if( e.className.split(' ')[i]=== c) has= true;
    if(has==true){return true;}else{return false;}
    }

    В лучших традициях говнокода. Оригинальное форматирование сохранено.

    Запостил: eval, 11 Августа 2010

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

    • показать все, что скрытоэто из какой нить опенсорсной либы?
      Ответить
    • Можно
      return e.className.match(new RegExp('(\\s|^)'+c+'(\\s|$)'));
      но это скучно.

      Лучше поговнокодить на славу!
      a=(e.className.indexOf(' '+c+' ')!=-1) || (e.className.substr(0,c.length+1)==c+' ')||(e.className.substr(e.length-c.length-1,c.length)==' '+c) || (e.className==c);
      if(a==true) {b=true;} else {b=false;}
      if(b==true) {c=true;} else {c=false;}
      if(c==true) {d=true;} else {d=false;}
      if(d==true) {return true;} else {return false;}
      Ответить
      • дада, заглянул в X Lib - там скучно:
        // xHasClass r3, Copyright 2005-2007 Daniel Frechette - modified by Mike Foster
        // Part of X, a Cross-Browser Javascript Library, Distributed under the terms of the GNU LGPL
        function xHasClass(e, c)
        {
          e = xGetElementById(e);
          if (!e || e.className=='') return false;
          var re = new RegExp("(^|\\s)"+c+"(\\s|$)");
          return re.test(e.className);
        }
        Ответить

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