2012-08-16 38 views
4

當我在頁面上按div時,會彈出一個窗口。當你再次點擊div時,彈出消失。當你點擊div的外部時,彈出消失 - 所有這些看起來都不錯。將jQuery點擊事件分配給除了幾個div和他們的孩子以外的所有內容

問題是,當我點擊彈出窗口時,我想讓彈出窗口和它的子窗口是可點擊的(它們是無序列表中的鏈接)。但是,我似乎無法得到這個工作。這裏是我的代碼

 $(function() { 
      $('#messageNotification').click(function (event) { 
      $("body").one('click', function() { 

       jQuery(".userInfo").fadeOut(); 
      }); 
      event.stopPropagation(); 
     }); 


      <body> 
      <div id="messageNotification"><div class="notif same">0</div></div> 
      <div id="messages"> 
       <ul class="userInfo" style=""> 
        <li></li> 
       </ul> 
      </div> 

      </body> 
+1

彈出窗口是哪個元素?代碼顯示彈出窗口在哪裏? – 2012-08-16 14:43:33

回答

7

如果我正確理解你,你可以通過選擇器進行篩選。例如:

$('body').on('click', 'a', function(){ ... }); 

這會將click事件到選擇a匹配的所有元素結合。

如果你要綁定的點擊所有元素匹配您的彈出窗口,你可以這樣做:

​​

:not().on() jQuery的文檔的詳細信息...

相關問題