我在<a>
代码中有一个<li>
代码,我想在点击<a>
时点击其中的<li>
。
我尝试了以下内容:
$('li.level2').click(function() {
$( $(this) +' a').click();
});
但我收到错误提示“错误:语法错误,无法识别的表达式:[object Object]”。
答案 0 :(得分:3)
要在单击的元素中查找链接,请使用find
(或仅对元素的直接子项children
):
$('li.level2').click(function(e) {
if (e.target.tagName.toUpperCase() !== "A") {
$(this).find('a').click(); // Or $(this).children('a').click();
}
});
请注意,我已过滤掉源自锚点的事件,因此无法解决。
但也有一个CSS解决方案:您可以通过将列表项更改为display: block
(取决于列表的样式)来使填充列表项。< / p>
如果目标是关注该链接,那么您可以通过JavaScript实现这一目标(例如,如果您不想填写{{1}使用CSS链接:
li