我正在尝试两个写一个jquery插件来跟踪进入视图的框,我无法弄清楚如何将UI值传递给我的插件以及如何在插件中使用topIn()
。
基本上这个插件意味着创建一个可在客户端重用的空回调函数boxTopIn
(function($) {
$.fn.boxInView = function(options) {
var settings = {
boxTopIn: null
};
var options = $.extend(settings, options);
function topIn(elem) {
$(window).scroll(function() {
var screenBot = $(window).height();
if (($(window).scrollTop() + screenBot) > elemTop) {
if ($.isFunction(options.onComplete)) {
options.onComplete.call();
}
options.boxTopIn.call();
}
});
}
};
})(jQuery);
$('#c').boxInView({
boxTopIn: function() {
console.log('Box in View');
}
});
答案 0 :(得分:1)
您永远不会在topIn
内调用$.fn.boxInView
功能。在定义topIn
函数后尝试添加此行:
topIn(this);
此时this
的值为$('#c')
,因此应该有效。