我有一个包含跨度的菜单,每个跨度必须变成一个链接(href)。 span包含来自字符串数组的文本,链接将是小写字母(+ .aspx)。
示例:
menuItems = ["Home", "Help", "FAQ", "Login"] //Will turn into 4 links
我不想使用事件监听器(onclick),因为我希望链接显式为HTML(搜索引擎友好)。
我的建议:
我看到的最简单的方法是创建自定义<a>
元素并在其中插入span.outerHTML
,但我想知道是否有人有其他建议。
a.innerHTML = span.outerHTML
编辑:使用<a>
代替<span>
有哪些缺点/好处? <span>
是否接受与<a>
相同的属性( href 除外)?
答案 0 :(得分:1)
最好的方法是使用<a>
作为链接,这将有助于机器人了解您网页的架构,之后也会提供一些优势。
与SEO相关的规范要求您使用语义标记(例如<figure> (for images)
)来帮助您的网站获得排名。
在您的情况下,您正在寻找一个类似于以下内容的导航菜单:
<nav class="headerNav">
<a href="#">Link 1</a>
<a href="#">Link 2</a>
<a href="#">Link 3</a>
...
</nav>
然后,您可以使用nav.headerNav
或nav.headerNav a
应用所需的样式。
这将让机器人(如谷歌的抓取工具)这是一个导航菜单,它将跟随所有链接。
<span>
可能支持href
元素(不是我所信赖的所有浏览器),但它的主要目的不是用作链接,它已经习惯了< em>强调文字或使其粗体或有色,主要是 内嵌 编辑。