window.width()jQuery无效

时间:2013-12-06 00:13:44

标签: jquery

如果屏幕大小小于768,我想触发此jquery函数,但它无法正常工作。 这是我的功能,请任何人帮助我使其发挥作用。

$(document).ready(function(){
    var width = $(widow).width(); 
    alert(width);
    if((width <= 768  ){
        $('body').addClass('js');
        var $menu = $('#menu'),
        $menulink = $('.menu-link'),
        $menuTrigger = $('.has-submenu > a');


        $menulink.click(function(e) {
            e.preventDefault();
            $menulink.toggleClass('active');
            $menu.toggleClass('active');
        });

        $menuTrigger.click(function(e) {
            e.preventDefault();
            var $this = $(this);
            $this.toggleClass('active').next('ul').toggleClass('active');
        });
    }
});

2 个答案:

答案 0 :(得分:0)

第2行的主要语法错误

寡妇应该是窗口

第4行的另一个......

if((width&lt; = 768){

应该是

if(width&lt; = 768){

除此之外没有检查,但这足以使代码失败。

答案 1 :(得分:0)

您的代码应为:

$(document).ready(function(){
    var width = $(window).width(); 
    alert(width);
    if(width <= 768  ){
      $('body').addClass('js');
      var $menu = $('#menu'),
      $menulink = $('.menu-link'),
      $menuTrigger = $('.has-submenu > a');

     $menulink.on('click',function(e) {
        e.preventDefault();
        $menulink.toggleClass('active');
        $menu.toggleClass('active');
     });

     $menuTrigger.on('click',function(e) {
        e.preventDefault();
        var $this = $(this);
        $this.toggleClass('active').next('ul').toggleClass('active');
     });
}
});

请注意window声明中使用if而不是on('click')

click()额外开头括号的拼写错误