JQuery - add click event to LI or SPAN elements?

前端 未结 4 1479
名媛妹妹
名媛妹妹 2021-02-08 23:00

I am trying to add a click event to a LI element but it is not firing in the page. My page markup looks like:

相关标签:
4条回答
  • 2021-02-08 23:43

    I did the same thing as @Parrots and it works for me. You might, however, want to change your selector to:

    $("#Navigation li[title]" ).live('click', function(e) {
         e.preventDefault;
         this.blur();
         return updateNavigation($(this).attr('title'));
    });
    

    So that the handler is only applied to elements that have a title attribute.

    0 讨论(0)
  • 2021-02-08 23:53

    You sure you have jquery 1.3 included in your code? The following works fine (direct copy and paste from your question) for me when I click on any of the LIs:

    <html>
    <head>
    <script type="text/javascript" src="jquery-1.3.2.min.js"></script>
    <script type="text/javascript">
    function updateNavigation(title) {
        alert(title);
    }
    
    $("#Navigation li").live('click', function(e) { 
        e.preventDefault; 
        this.blur(); 
        return updateNavigation($(this).attr('title')); 
    });
    
    </script>
    </head>
    <body>
    <div id="Navigation">
    <ul>
        <li class="navPrevNext inactive">|&lt; First Page</li>
        <li class="navPrevNext inactive">&lt; Prev Page</li>
        <li class="navIndex selected" title="0 ">1</li>
        <li class="navIndex notselected" title="1 ">2</li>
        <li class="navIndex notselected" title="2 ">3</li>
        <li class="navPrevNext active" title="1">Next Page &gt;</li>
        <li class="navPrevNext active" title="2">Last Page &gt;|</li>
    </ul>
    </div>
    </body>
    </html>
    

    Are you sure your updateNavigation function is working right? Maybe it's being triggered but something is wrong within it...

    0 讨论(0)
  • 2021-02-09 00:04

    don´t use span it´s better delegate

    0 讨论(0)
  • 2021-02-09 00:05

    I had a similar problem where I was using a popup list that the user selected. Basically the user clicks an input box and a ul is revealed.

    This worked great with a 500ms animation, but when switching to 250ms the scrolling down animation was too fast and apparently the click event never fired on a li.

    0 讨论(0)
提交回复
热议问题