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

why is jquery resize not working?

本文关键字:不起作用 调整 jquery 为什么      更新时间:2023-09-26

我正在制作一个响应菜单。我把更改菜单的代码放在一个名为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();
});

有人能帮我解决这个问题吗

一旦设置了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');
 }
}