如何点击自包含的< >一盏灯的

How to click the self contained <a> of an <li>?

本文关键字:一盏 何点击 包含      更新时间:2023-09-26

这是我尝试过的JS:

$('#footer').find('.browse li').click(function(e){
            $(this).find('a').click();
        });

下面是有问题的HTML:

<div id="footer" class="span-24"><div class="footer-box"><div class="footer-holder">
    <div class="browse">
        <ul>
           <li><a href="xyz">123</a></li>
           <li><a href="xyz">123</a></li>
           <li><a href="xyz">123</a></li>
           <li><a href="xyz">123</a></li>
        </ul>
    </div>
</div></div></div>

单击<li>,如何使<a>单击?

p。这是由于css设计(LI有一堆填充和背景,不能放在a上)

你对.click()的调用只是触发任何绑定到aclick事件。我想你应该是这样的:

$('#footer').find('.browse li').click(function(){
   window.location = $(this).find('a').attr('href');
}

你只是错过了一个点击事件的a ?例子:

$('.browse li').click(function(e){
            $(this).find('a').click();
        });
$('a').click(function(){
   alert("a clicked");
    return false;
});

查看此页面:http://jsfiddle.net/LRMqD/3/

另一方面,如果你只是想重定向到href,试试下面的代码:

$('.browse li').click(function(e){
            window.location.href = $(this).find('a').attr('href');
        });

请不要为每个元素附加事件处理程序。

用委托代替:

$('#footer').find('.browse li').delegate('a', 'click', function(e){
    var elt = e.target;
    console.log('clicked a number '+elt.id);
});

要让<a>点击,你需要做一个trigger

http://api.jquery.com/trigger/

$('#footer').find('.browse li').click(function(e){
    $(this).find('a').trigger('click');
});