我正在尝试两个写一个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');
}
});
您永远不会在$.fn.boxInView
中调用topIn
功能。在定义topIn
功能之后尝试添加此行:
topIn(this);
这一点this
的值将为$('#c')
,因此应该有效。