在 jQuery 中,您可以附加一个“isvisible”事件处理程序来监视 div 元素的可见性并触发特定操作当它变得可见时。
提供的伪代码可以实现为如下所示:
<code class="js">$(function () { $('#contentDiv').on('isVisible', function () { alert("do something"); }); });</code>
此代码将事件处理程序分配给 #contentDiv div,当 div 可见时执行警报函数。
jQuery 扩展方法:
或者,您可以扩展 .show() 方法以在 div 出现之前和之后触发事件显示:
扩展:
<code class="js">jQuery(function ($) { var _oldShow = $.fn.show; $.fn.show = function (speed, oldCallback) { return $(this).each(function () { var obj = $(this); var newCallback = function () { if ($.isFunction(oldCallback)) { oldCallback.apply(obj); } obj.trigger('afterShow'); }; obj.trigger('beforeShow'); _oldShow.apply(obj, [speed, newCallback]); }); }; });</code>
用法:
<code class="js">$('#test') .on('beforeShow', function () { alert('beforeShow'); }) .on('afterShow', function () { alert('afterShow'); }) .show(1000, function () { alert('in show callback'); }) .show();</code>
通过这种方法,您可以触发事件在显示 div 之前和之后,同时保持原始 .show() 方法的行为。
以上是如何在 jQuery 中触发可见 Div 的事件?的详细内容。更多信息请关注PHP中文网其他相关文章!