1

正如标题中提到的那样,这一切都会影响什么。

代码工作正常,您希望真正看到发生的任何事情,希望<a>标签中的“href”属性更改为“iref”。

我这样做是为了稍后通过​​ jquery.load() 加载内容

我应该这样做吗?什么是“正确”的做法?谷歌呢,它会影响谷歌机器人吗?我问这个是因为:如果没有打开 javascript,链接希望从 href 更改为 iref 并正常工作。那么机器人可以跟随他们吗?

感谢所有的答案。

有一个小提琴

<a class="top-nav animMainBox" href="/home.html">Home</a>
<a class="top-nav animMainBox" href="notathome.html">Not at home</a>
<a class="top-nav animMainBox" href="/contact.html">Contact</a>


<style type="text/css">
    a{margin:10px;}
</style>

<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script type="text/javascript">
    $(document).ready(function(){

        hrefToIref();

        $(document).on('click','.animMainBox',function(){
            loadNewBox($(this), true);
        });

    });


    function hrefToIref() {
        $('.animMainBox').each(function(){
            var url = $(this).attr('href');
            $(this).attr('href','javascript:;').attr('iref',url);
        });
        $('.button').each(function(){
            var url = $(this).attr('href');
            $(this).attr('href','javascript:;').attr('iref',url);
        });
    }

    function loadNewBox($this,animate) {
        // loading and returning new boxes via 
        // var url = $this.attr('iref');
        // $(".wrapper").load(url+' .toggle.box',{noncache: new Date().getTime()}, function(response, status, xhr) {}
    }


</script>
4

2 回答 2

2

我应该这样做吗?

当然是。iref属性看起来很无效。

机器人可以跟随他们吗?

是的,他们通常只会查看带有href属性的静态 HTML 标记。

谷歌呢,它会影响谷歌机器人吗?

我认为谷歌有点不同,因为他们可以查看打开 JS 的页面。我不知道您的脚本是否会阻止他们跟踪链接。

什么是“正确”的做法?

只需保留href属性不变即可。当他们被点击时防止跟随他们。

$(document).on('click','.animMainBox, .button', function(e){
    e.preventDefault();
    loadNewBox($(this), true);
});
function loadNewBox($this,animate) {
    var url = $this.attr('href');
    //                    ^ just use the correct attribute
    …
}
于 2013-07-05T11:49:45.890 回答
0

Why not just like this :

$(document).ready(function(){

        $('a').click(function(){ return false; });

        $(document).on('click','.animMainBox',function(){
            loadNewBox($(this), true);
        });

    });

This will stop the links from working and you can load something later on.
Search robots can still visit the links yes.

于 2013-07-05T11:44:05.757 回答