为什么jquery调整大小不起作用?

时间:2014-11-12 18:01:23

标签: javascript jquery css

我正在制作响应式菜单。我把代码更改为名为file的函数中的菜单。 当文档或窗口调整大小时,Jquery再次调用函数文件来更改菜单。但这不起作用。 当我加载页面时,它可以正常工作,但在调整大小时却没有。

Jquery的:

var width = $(window).width();

file();
function file(){
  if(width <= 400){
      $('.link').remove();
      $('head').append('<link class="link" rel="stylesheet" href="nav2.css">');
  }else if(width >400){
      $('.link').remove();
      $('head').append('<link class="link" rel="stylesheet" href="nav.css">');

  }else{
      alert('error');
  }
}
$(window).resize(function(){
  file();
});

$(document).resize(function(){
  file();
});

有人可以帮我解决这个问题

1 个答案:

答案 0 :(得分:3)

您的width变量一旦设置就不会改变。你应该在函数声明中移动它。

function file(){
  var width = $(window).width();
  if(width <= 400){
    $('.link').remove();
    $('head').append('<link class="link" rel="stylesheet" href="nav2.css">');
  }else if(width >400){
    $('.link').remove();
    $('head').append('<link class="link" rel="stylesheet" href="nav.css">');
 }else{
  alert('error');
 }
}