在复杂a
周围放置一个锚点div
,或者包含更多按钮和其他锚点的容器不是有效的。
如果我希望此容器表现为另一个元素的链接,那么正确,有效的方法是什么?
代码示例:
<div class="my-container-where-i-would-like-a-link" data-href="/something">
...
<a href="/something/else">a children link</a>
</div>
现在我正在考虑用JavaScript实现它,我想知道是否有更好的选择。
编辑:还请考虑SEO不友好如何使用JavaScript来执行此操作。
答案 0 :(得分:1)
没有JavaScript,我无法想办法。但用JS做这件事最简单的方法就是:
<div class="my-container-where-i-would-like-a-link" onclick="window.location.href = '/something'">
答案 1 :(得分:1)
嵌套的锚元素不是有效的HTML,因此唯一有效的选择是使用JavaScript。
Google将使用onclick=""
创建的链接考虑在内,如果它们很容易被解释为链接。它们被视为普通<a>
标记。谷歌发言人马特·卡茨(Matt Cutts)证实了这一问题。 (来源:http://www.scriptol.com/seo/faq/)。
这是最好的方法:
<a class="my-container-where-i-would-like-a-link" href="/something">
...
<span onclick="location.href='/something/else'; return false;">a children link</span>
</a>
使用return false;
来阻止触发父锚点击事件。
答案 2 :(得分:0)
你可以做这样的事情
<div class="my-container-where-i-would-like-a-link" id="tempId" data-href="/something">
$("#tempId").on("click", function() {
location.href = "something";
});