Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用两个jQuery事件方法执行同一组函数_Javascript_Jquery - Fatal编程技术网

Javascript 使用两个jQuery事件方法执行同一组函数

Javascript 使用两个jQuery事件方法执行同一组函数,javascript,jquery,Javascript,Jquery,在本例中,我试图使用.css来获取if语句,以同时处理.ready和.resize,但我不知道如何组合它们 var windowsize = $(window).width(); $(window).ready(function() { windowsize = $(window).width(); if (windowsize > 440) { $('body').css("background-color", "blue"); } else { $

在本例中,我试图使用
.css
来获取if语句,以同时处理
.ready
.resize
,但我不知道如何组合它们

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

$(window).ready(function() {

  windowsize = $(window).width();

  if (windowsize > 440) {

    $('body').css("background-color", "blue");

  }
  else { 

$('body').css("background-color", "red");  

  }

}); 
有什么帮助吗

function resizeMe(){
  var windowsize = $(window).width();

  if (windowsize > 440) {
    $('body').css("background-color", "blue");
  } else { 
    $('body').css("background-color", "red");  
  }
}


$(window).ready(resizeMe)
         .resize(resizeMe);
或者,感谢@Perpatim,通过这种方式:

$(window).on("ready resize", resizeMe);
并且可以将功能简化为(由于@bfontaine):

试一试


jsfiddle

比“guest271314”的答案稍微好一点,因为您将处理程序分解为一个独立的函数。现在,将其与单个赋值
$(窗口)结合起来你真的要用煤气做饭了。:)为什么不内联条件<代码>$('body').css(“背景色”,窗口大小>440?“蓝色”:“红色”)我没有深入研究函数逻辑,@bfontaine=),但当然可以这样做。甚至没有变量声明
$('body').css(“背景色”,$(窗口).width()>440?“蓝色”:“红色”)
function resizeMe(){
    $('body').css("background-color", $(window).width() > 440 ? "blue" : "red");
}
$(window).on("load resize", function() {    
  var windowsize = $(window).width();    
  if (windowsize > 440) {    
    $('body').css("background-color", "blue");    
  }
  else {     
    $('body').css("background-color", "red");      
  };    
}).resize();