Sam*_*Sam 36 jquery events javascript-events
有没有人知道一个onHide()事件或jQuery中类似的东西?
我试过了:
$(this).bind('hide', function(){
console.log('asdasda')
})
Run Code Online (Sandbox Code Playgroud)
但显然这不起作用.
编辑:
只是为了澄清,它是使用CSS隐藏的display:none.
我知道回调函数,但因为我没有隐藏它(CSS是)我不能使用它.对于它的价值,我需要检查下拉列表何时可见.它由以下CSS显示:
ul li:hover ul {
display: block;
}
Run Code Online (Sandbox Code Playgroud)
Pet*_*dIt 71
没有本机或内置"隐藏"事件,但如果您使用jQuery隐藏它,您可以轻松添加隐藏事件:
var _oldhide = $.fn.hide;
$.fn.hide = function(speed, callback) {
$(this).trigger('hide');
return _oldhide.apply(this,arguments);
}
Run Code Online (Sandbox Code Playgroud)
Fai*_*san 15
您可以在隐藏功能中传递回调函数.
function iAmCallBackForHide() {
alert('I am visible after hide');
}
$('#clickMeToHide').hide( iAmCallBackForHide );
Run Code Online (Sandbox Code Playgroud)
soh*_*970 10
DOM中的任何HTML元素都没有"隐藏"事件.你是如何"隐藏"你的元素的?您是否使用CSS更改显示或可见性?
如果您使用display:none来隐藏元素,则无法检测CSS何时更改.在IE中,您可以检测属性何时更改但不会扩展到样式值.您需要在CSS显示更改时抛出事件或执行事件正在执行的操作.
小智 5
两年后找到这篇文章的人:
您确切知道菜单何时可见,对吧?!CSS规则告诉你.因此,您可以使用jQuery 重新创建相同的规则并依赖于相同的"悬停事件" ,而不是依赖onShow或onHide事件:
$('ul li').hover(function () {
// Whatever you want to do 'onShow'
}, function () {
// Whatever you want to do 'onHide'
});
Run Code Online (Sandbox Code Playgroud)
此外,您的脚本现在独立于任何样式表,因此演示文稿详细信息不会指示网站行为(很好).
| 归档时间: |
|
| 查看次数: |
88993 次 |
| 最近记录: |