2015-09-28 76 views
0

我想在jQuery的每次點擊不同鏈接後顯示一個彈出窗口。如何在點擊某個鏈接之後觸發某個事件jquery

我有不同的鏈接,頁面刷新後會進入其相對頁面。如何在每4個鏈接點擊後顯示彈出窗口?

<a href="home.html">Home</a> 
<a href="about.html">About</a> 
<a href="portfolio.html">Portfolio</a> 
<a href="Contact.html">Contact</a> 
<a href="faq.html">FAQ</a> 

這裏是我的腳本,我使用

(function() { 
    var count = 0; 
    $(a).click(function() { 
     count += 1; 
     if (count == 4) { 
      // popup code 
     } 
    }); 
})(); 
+0

檢查我已經更新了我的問題。 – fanatic

+0

您應該將計數器保存在可以在頁面加載後再次獲取的位置。使用本地存儲。 – guradio

回答

2

您可以使用$.data()存儲的點擊數爲具體路段如下:

$(document).ready(function(){ 
 
    
 
    $("a").click(function(e){ 
 
    e.preventDefault(); 
 
     if($(this).data("numberOfClicks")){ 
 
     var currentClicks = $(this).data("numberOfClicks"); 
 
     currentClicks++; 
 
     $(this).data("numberOfClicks",currentClicks); 
 

 
     if(currentClicks % 4 == 0) 
 
      alert($(this).text()+" clicked "+currentClicks+" times...!"); 
 
     } 
 
    else 
 
     { 
 
     $(this).data("numberOfClicks",1); 
 
     } 
 
    }); 
 
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<a href="home.html">Home</a> 
 
<a href="about.html">About</a> 
 
<a href="portfolio.html">Portfolio</a> 
 
<a href="Contact.html">Contact</a> 
 
<a href="faq.html">FAQ</a>

+0

感謝Vijay爲你回答,但我想在每4個鏈接點擊後(4的倍數,像4,8之後,12之後等等)觸發事件 – fanatic

+0

這是完成了... :)! – vijayP

+0

嗨,代碼上的numberOfClicks是什麼? – fanatic

2

試試這個:你可以有計數數據如果點擊不是第四次點擊,則每個鏈接和呼叫e.preventDefault()

$(function(){ 
 
    $('a').click(function(e){ 
 
     var count = parseInt($(this).data('count')) || 0; 
 
     count++; 
 
     if(count%4!=0) 
 
      e.preventDefault(); 
 
      
 
     $(this).data('count',count); 
 
    });  
 

 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> 
 
<a href="home.html">Home</a> 
 
<a href="about.html">About</a> 
 
<a href="portfolio.html">Portfolio</a> 
 
<a href="Contact.html">Contact</a> 
 
<a href="faq.html">FAQ</a>

0
<html> 
<head> 
    <script src="https://code.jquery.com/jquery-1.9.1.min.js"></script> 
    <script> 
     $(document).ready(function() { 

      var $count = 0; 

      $('a').click(function() { 

       $count += 1; 

       if ($count == 4) { 

        alert(" 4 clicks on different links"); 

        //define the event function here 
        // bind the event with the html elements 
       } 
      }); 



     }); 



    </script> 
</head> 
<body> 
    <a id="home"href="#">Home</a> 
    <a href="#">About</a> 
    <a href="#">Portfolio</a> 
    <a href="#">Contact</a> 
    <a href="#">FAQ</a> 

</body> 
</html> 

enter code here 
相關問題