代码如下(示例):
// - 解决resize执行两次的问题
var n = 0;
jQuery(window).resize(function () {
n++;
if (n % 2 == 0) {
n = 0;
//todo
// console.log("todo");
}
// console.log(n);
});
谷歌浏览器在测试时,当窗口发生改变时,resize()函数有时会执行一次,有时会执行两次,所以改进为下面代码。
var resizeTimer = null;
jQuery(window).resize(function () {
if (resizeTimer) clearTimeout(resizeTimer);
resizeTimer = setTimeout(function () {
// console.log("窗体发生改变了");
//todo
}, 100);
});