jquery click event on anchor

前端 未结 4 1691
走了就别回头了
走了就别回头了 2021-02-05 14:43

Here\'s the snippet of html i have:


      
      
4条回答
  • 2021-02-05 15:31

    The reason why your first code doesn't work because there are multiple anchors in your div content tag, hence when you associate anchor that resides in that tag with a click, it will generate ambiguity to in choosing exact anchor. You can target particular anchor by using its id attribute, and than associate the id with your events to target particular anchor. So the code will be as follows.

    <div id="tag-cloud-widget">  
        <div class="content">  
            <a href="#" rel="1" class="cloud-element" id="anca" data-tag-id="10" style="font-size: 12px; color: rgb(205, 236, 222); ">T1</a>  
            <a href="#" rel="1" class="cloud-element" id="ancb" data-tag-id="1" style="font-size: 12px; color: rgb(205, 236, 222); ">T2</a>  
            <a href="#" rel="1" class="cloud-element" id="ancc" data-tag-id="3" style="font-size: 12px; color: rgb(205, 236, 222); ">T3</a>  
        </div>
    </div>
    

    And following will associate clicks to particular anchor.

    $("#tag-cloud-widget .content #anca").click(function(e) {
        alert('Anchor A clicked');  
        return false;  
    });
    
    $("#tag-cloud-widget .content #ancb").click(function(e) {
        alert('Anchor B clicked');  
        return false;  
    });
    
    $("#tag-cloud-widget .content #ancc").click(function(e) {
        alert('Anchor C clicked');  
        return false;  
    });
    
    0 讨论(0)
  • 2021-02-05 15:32

    Write your code inside document.ready and use e.preventDefault

    Write like given below :

    $(document).ready(function(){
        $("#tag-cloud-widget .content a").click(function(e) {
            e.preventDefault();
            alert('Clicked');  
            return false;  
        });
    });
    
    0 讨论(0)
  • 2021-02-05 15:33

    When handling anchor click events, always use e.preventDefault(); when you don't need the anchor anyway. Fires like a charm

    0 讨论(0)
  • 2021-02-05 15:33

    !THIS is tested and working.

    You forgot to put your code inside the document ready function

    $(function() {
    //your code
    });
    
    0 讨论(0)
提交回复
热议问题