SEO ajax和链接

时间:2013-01-10 21:31:23

标签: javascript html ajax seo web-crawler

我一直在考虑SEO,ajax和链接。在查看来自不同网页的代码以及他们似乎如何处理这个问题时,我感到困惑。

我一直确保为进行ajax调用的函数存在静态上下文。我没有放置javascript内联我的标记,但我宁愿使用id来调用外部js文件的函数。我自己的典型例子如下:

<a href="/resource?take=10" id="next-ten">Link</a>

然后用点击功能连接id。

但我在一些主要页面上看到的是他们使用的东西:

<a href="#" onclick="ajaxCall();">Link</a>
<a href="javascript:void(0)" onclick="ajaxCall()">Link</a>

使用上面的javascript内联有什么好处吗?我不明白,主要网站似乎正在使用它?

2 个答案:

答案 0 :(得分:2)

第二种方式很糟糕,因为不使用javascript的抓取工具无法使用第二种方法。

如果不使用javascript,第一种方法仍然可以使用。

只要你的链接被正确命名并且上下文合适,并且在没有启用javascript的情况下AND行为正确,你应该100%正常。

虽然有些抓取工具确实使用了javascript,但即使第二种变体很差,它仍然可能有效。

tl; dr:如果没有javascript就可以运行,那就很好。

答案 1 :(得分:0)

在HTML部分上写这样:

<a href="/resource?take=10" onclick="return ajaxCall()">Link</a>

在JavaScript部分,请这样写:

function ajaxCall() {
    // AJAX functionalities will go here
    return false;
}

搜索引擎会为网址编制索引,因为抓取工具抓取页面时不会执行JavaScript代码。但是当用户使用浏览器浏览此页面时,将执行JavaScript代码(假设用户未禁用JavaScript),并且将调用ajaxCall函数。

  

注意:当函数返回false时,用户将无法导航到href部分中定义的网址。但如果它返回truevoid,则用户将被导航到定义的位置。