[英]Toggle (click) and bind event (on document)
我有一個按鈕<a>
,該按鈕應切換下拉菜單。然后,它還應將click事件綁定(一旦)到文檔,單擊該文檔時應將其向上滑動。
我從HTML和JS開始...如何進行這項工作的任何建議?
<a class="a" href="#">continue shopping</a>
<div class="b">
<a href="#">continue 1</a>
<a href="#">continue 2</a>
<a href="#">continue 3</a>
<a href="#">continue 4</a>
</div>
$(".a").toggle(function(event){
buttonEvent = $(event.target)
$(this).addClass("open").next(".a").slideDown(500);
$(document).one("click",function(e){
if(!$(e.target).is(".a") && !buttonEvent.hasClass("b")){
$(".b").slideUp(500)
}
})
},
function(){
$(this).removeClass("open").next(".continueShopCntnr").slideUp(500)
});
但是它仍然是越野車..當再次點擊繼續購物時,它什么也沒做
也許這樣做會更好...它將關閉文檔單擊上所有打開的文件。
編輯:實際測試了此代碼(與以前的答案),並且按我的理解它可以工作。
$(".continueShop").toggle(
function(){
$(this).removeClass("open").next(".continueShopCntnr").slideUp(500)
},
function(){
$(this).addClass("open").next(".continueShopCntnr").slideDown(500);
$(document).one("click",function() {
$(".continueShop.open").each(function() {
$(this).click();
});
});
}
);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.