繁体   English   中英

如何单击列表图像会触发单击该列表元素内的链接?

[英]How to make a click of the list image trigger a click of the link inside that list element?

我有一个包含链接的无序列表。

我设置了列表样式,以便链接左侧有一个“ Click Me ”图像。

ul 
{ 
    list-style-image:url(/images/ClickMe.png)
}

问题是 :当用户点击“ Click Me ”时,它们不会被重定向,也没有任何反应。

如何单击列表图像会触发单击该列表元素中的链接?

<ul>
    <li><a href="someurl">Some Url</a></li>
    <li><a href="someotherurl">Some Other Url</a></li>
</ul>

我认为这更像是一个CSS问题,因为列表项目符号实际上不是标记的一部分。 您可以通过将链接“向左”包含这样的子弹来欺骗(请参阅jsfiddle代码段 ):

ul
{ 
    list-style: disc;
    list-style-position: inside;
    padding: 0;
    margin: 0;
}

a {
    margin-left: -20px;
    padding-left: 20px;
}

你总是可以通过jQuery使项目可点击:

$("li").click( function (evt) {
    location.href = $(this).find("a").attr("href");
});

我不知道是否有更好的方法可以做到这一点,但这可以通过制作链接大小,使其包含链接左侧的项目符号。

a{
  margin-left: -2em;
  padding-left: 2em;
}

如果您只需要列表中有这些项目符号,则可以通过显示链接“list-item”来执行此操作而不使用列表:

<style>
a{ 
    display:list-item;
    list-style-image:url(/images/ClickMe.png);
    list-style-position:inside;
}
</style>
<div style="padding:12px;">
  <a href="someurl">Some Url</a>
  <a href="someotherurl">Some Other Url</a>
</div>

http://jsfiddle.net/zp8QU/

顺便说一句,这也有效,但没有通过验证,有谁知道是否有正确的方法吗?

<body>
    <ul>
        <a href="someurl"><li>Some Url</li></a>
        <a href="someotherurl"><li>Some Other Url</li></a>
    </ul>
</body>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM