在我的网站上,我有一个按钮。如果你点击它,就会出现一个下拉列表。如果再次单击它。它会消失。 我使用jQuery函数TOGGLE。 现在我想要以下内容。如果您移出下拉列表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);
});
答案 0 :(得分:0)
只需将您的计时器设置为发出$('.ContextMenuLink').click()
。
至于外部点击,我会做这样的事情:
$(document).click(function outSideClick(e){
if(e.target != $('.ContextMenuLink')[0]){
$('.ContextMenuLink').click();
$(document).unbind('click',outSideClick);
})
});
每当您通过单击或使用计时器关闭下拉列表时,您还应该记住取消绑定此事件。