我知道jquery支持委托函数用于添加和删除函数自定义跟随事件。 EX
$("body").delegate("#p", "click", cfunc);
但是如何在加载页面时委派函数?
编辑------
我在我的问题中显示了更多详细信息的ex代码::)
我有一个功能自定义名称= cfunc()
现在我需要在页面加载时调用它来运行其中的许多事件。
在加载的时间页面上,查看者发布了一些事件(例如:调整大小,滚动...)我需要undelegate
cfunc()
并再次调用一些新的var。
---编辑2 -----
对不起大家,我会写更多代码:
这是我想委派的功能
function bbbb_scroll(pos)
{
$(document).scroll(function() {
var _currentpos = $(window).scrollTop();
if (_currentpos > pos) {
console.log('match');
}
});
}
现在我想在舞台准备时将其添加到页面
$(document).ready(function() {
$(window).delegate("body", "resize", bbbb_scroll);
});
毕竟,当用户resize
浏览器窗口时,我需要undelegate
bbbb_scroll
函数并再次使用新的var(pos
变量)
答案 0 :(得分:1)
$(document).ready(function(){
var position = 100;
var scrollCallback = function(pos){
var _currentpos = $(window).scrollTop();
if (_currentpos > pos) {
console.log('match');
}
};
var resizeCallback = function(){
$(document).unbind('scroll');
$(document).on('scroll', function(){
scrollCallback(position);
});
};
$(window).on('resize', resizeCallback);
});
答案 1 :(得分:0)
答案 2 :(得分:0)
通过将函数(匿名或通过名称)传递给ready
方法
匿名方法:
$(document).ready(function(){
...
});
命名函数
function myReadyHandler(){..}
$(document).ready(myReadyHandler);