我希望的内容jQuery.fn.resize
仅在我放开鼠标按钮后才执行,而不是在我调整窗口大小时执行。
我曾尝试在调整大小时将 onmousedown 放在里面,但它没有用。
$(window).resize(function(){
console.log("resizing")
});
我希望的内容jQuery.fn.resize
仅在我放开鼠标按钮后才执行,而不是在我调整窗口大小时执行。
我曾尝试在调整大小时将 onmousedown 放在里面,但它没有用。
$(window).resize(function(){
console.log("resizing")
});
您无法知道文档之外发生了什么,并且在调整大小结束时您不会收到通知(调整大小可以通过多种方式发生,并非所有方式都基于鼠标)。
但是您可以添加一个计时器以获得相同的效果:
(function(){
var timer;
$(window).resize(function(){
if (timer) clearTimeout(timer);
timer = setTimeout(function(){
// do the things
}, 200);
});
})();
这会增加一点延迟(200 毫秒应该没问题),但这将避免大多数中间重新计算。
请注意,当您的 javascript 函数运行时,您不会收到事件,因此您通常不必这样做,除非您真的希望用户在调整大小期间看不到任何内容。