我有一个问题:我有一个我想在调用它时执行的函数并将一个事件控制器附加到该函数
现在我正在使用这个解决方案,但我认为这不是最好的做法
ff();
$(window).bind('scroll resize', function(){ ff(); });
function ff(){ /* do something */ };
解决这个问题的最佳技巧是什么?
我有一个问题:我有一个我想在调用它时执行的函数并将一个事件控制器附加到该函数
现在我正在使用这个解决方案,但我认为这不是最好的做法
ff();
$(window).bind('scroll resize', function(){ ff(); });
function ff(){ /* do something */ };
解决这个问题的最佳技巧是什么?
好吧,使用窗口,您可以这样做:
$(window).bind('scroll resize load', ff);
这也会在窗口加载时触发该功能。
试试这个:
function ff(){ /* do something */ };
$(window).bind('scroll resize', ff ).resize();
不确定您到底想要什么,但这肯定是一种常见的模式。
function ff(){ /* do something */ };
...
$(window).on('scroll resize', ff).trigger('resize');
通过触发一个事件,而不是直接调用ff()
,处理程序在内部做出正确的解释this
(即window
在示例中)。
请注意使用on()
优先于bind()
which 现在已弃用。