簡體   English   中英

切換(單擊)並綁定事件(在文檔上)

[英]Toggle (click) and bind event (on document)

我有一個按鈕<a> ,該按鈕應切換下拉菜單。然后,它還應將click事件綁定(一旦)到文檔,單擊該文檔時應將其向上滑動。

我從HTML和JS開始...如何進行這項工作的任何建議?

的HTML

      <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>

JS

 $(".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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM