有没有办法判断一个元素是否被隐藏或当前正在隐藏(通过动画)?我能想到的唯一方法是将标志存储在元素的data
你打电话时show
or hide
,但我想知道是否还有其他方法?
你能为它做一个自定义的 jQuery 选择器吗
(function($) {
var endOpacity,
oldStep = jQuery.fx.step.opacity;
$.fx.step.opacity = function( fx ) {
endOpacity = fx.end;
return oldStep(fx);
};
$.expr[':'].hiding = function(obj){
var $this = $(obj);
return ($this.is(':hidden') || ($this.is(':animated') && endOpacity === 0));
};
})(jQuery);
这对我有用 http://jsbin.com/ojuro3/3/edit(不过可能需要更多测试)。
所以只需添加:hiding
它将匹配隐藏元素以及当前动画为 0 的元素。现在它会only匹配正在消失而不是出现的元素。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)