2015-06-14 148 views
-1

我試圖把我的代碼放在<head>區域,因爲它需要一些時間才能在移動設備中加載導航菜單。你可以在這裏看到演示:http://www.responsinator.com/?url=paison-templateify.blogspot.com.es%2F爲什麼jquery不工作

我使用TinyNav.js來轉換導航到選擇下拉菜單,然後我將在<ul>一類使用jQuery這裏是我完整的代碼,目前其放置在頁腳區域及其工作,但它需要一些時間的負載。

$(document).ready(function() { 
    $('#menufy ul').addClass('zigla'); 
    $(".zigla").tinyNav();  
}); 

(function(a, i, g) { 
    a.fn.tinyNav = function(j) { 
     var b = a.extend({ 
      active: "selected", 
      header: "", 
      label: "" 
     }, j); 
     return this.each(function() { 
      g; 
      var h = a(this), 
       d = "tinynav" 
      g, f = ".l_" 
      d, e = a("<select/>").attr("id", d).addClass("tinynav " 
       d); 
      if (h.is("ul,ol")) { 
       "" !== b.header && e.append(a("<option/>").text(b.header)); 
       var c = ""; 
       h.addClass("l_" 
        d).find("a").each(function() { 
        c = '<option value="' 
        a(this).attr("href") 
        '">'; 
        var b; 
        for (b = 0; b < a(this).parents("ul, ol").length - 1; b) c = "- "; 
        c = a(this).text() 
        "</option>" 
       }); 
       e.append(c); 
       b.header || e.find(":eq(" 
        a(f " li").index(a(f " li." 
         b.active)) 
        ")").attr("selected", !0); 
       e.change(function() { 
        i.location.href = a(this).val() 
       }); 
       a(f).after(e); 
       b.label && e.before(a("<label/>").attr("for", d).addClass("tinynav_label " 
        d "_label").append(b.label)) 
      } 
     }) 
    } 
})(jQuery, this, 0); 

爲什麼這段代碼在<head>區域不工作?

+0

不要SO – naomik

+0

我用http://jsbeautifier.org/清潔代碼後縮小的/混淆代碼:/ – user2397942

+0

這個位在這裏是完全無效的return this.each(function(){ g; var h = a(this), d =「tinynav」 g,f =「.l_」 d,e = a 「(「id」,d).addClass(「tinynav」' – naomik

回答

2

你需要移動

$('#menufy ul').addClass('zigla'); 

$(document).ready(function() { 

}); 
+0

感謝您的回答,我做了它,它的工作,但問題是它仍然需要時間加載,你可以演示,有沒有解決方案? – user2397942

+0

請在ready函數中移動下面的腳本。 – nikhil

+0

我做到了,我移動了腳本。 – user2397942