【发布时间】:2021-03-27 00:17:57
【问题描述】:
我正在做一个项目,我们使用<button> 元素作为链接,例如,我们打开用户想要的页面,不同之处在于我们不将用户重定向到页面,只是呈现它在div。
当我们在另一天讨论 SEO 策略时,有人提到这对我们在搜索引擎中的排名有多么不利,以及我们应该如何尝试使用默认的 <a> 元素。
我能够实现我想要的唯一方法是设置 href="#" - 这破坏了使链接可抓取的目的 - 然后在我的 <a> 的 onClick 处理程序上调用 event.preventDefault()。
我想这个问题可以用两种方式问:
如何防止
<a>标记重定向用户,同时保持其 href 属性?
或
我怎样才能使我的链接可抓取,同时防止它们 重定向用户,如果点击?
我已经试过了:
- event.stopPropagation()
- event.preventDefault()
- 返回假;
来自this thread:
- event.stopPropagation()
- event.nativeEvent.stopImmediatePropagation()
【问题讨论】:
-
a标签用于导航,但您没有导航。使用button是对的,你的SEO不会被毁掉。 -
我一直在尝试遵循来自 Google developers.google.com/search/docs/advanced/guidelines/…的本指南
-
您的按钮不是链接,不应该是可抓取的。
-
就个人而言,我讨厌以 div 模式加载页面,我觉得它在不需要的地方增加了额外的复杂性。我希望您正在管理历史记录,以便您的用户仍然可以使用后退和前进按钮进行导航。您在 div 中加载的页面是带有 doctype、html、head 和 body 标签的完整页面,还是部分页面?如果完成分页,您是否只是解析出您需要的内容?
标签: html reactjs web-crawler anchor