在我的网站上有一个按钮。如果你点击它,一个下拉列表就会出现。如果你再次点击它。它会消失的。我使用jQuery函数对其进行切换。现在,我想要以下内容。如果您从下拉列表中移出2秒钟,或单击下拉列表之外的某个位置。它必须再次消失。
有没有一种方法可以用计时器切换切换功能并点击外部?代码如下:
$(Ar3).addClass(aU);
$('.ContextMenuLink').toggle(function () {
$(hP).css('background', '#fff');
$('.ContextMenuTxt').css('color', '#6b8592');
$(CM).css('display', 'block');
$(Ar3).addClass(aD).removeClass(aU);
}, function () {
$(hP).css('background', 'none');
$('.ContextMenuTxt').css('color', '#fff');
$(CM).css('display', 'none');
$(Ar3).removeClass(aD).addClass(aU);
});发布于 2012-08-22 15:48:16
只需将计时器设置为发出$('.ContextMenuLink').click()即可。
至于外部点击,我会这样做:
$(document).click(function outSideClick(e){
if(e.target != $('.ContextMenuLink')[0]){
$('.ContextMenuLink').click();
$(document).unbind('click',outSideClick);
})
});您还应该记住,每当您通过单击或使用计时器关闭下拉菜单时,都要解除绑定此事件。
https://stackoverflow.com/questions/12068447
复制相似问题