zoukankan      html  css  js  c++  java
  • <a>标签的SEO优化细节

      如果需要在新窗口中打开链接,我们使用的方法是在a上加上taget=“_blank”,但很多人不知道这是不符合w3c的规范的,在使用严格的DOCTYPE(xhtml1-strict.dtd)校验时,会提示“there is no attribute target for this element(in this HTML version)”的错误信息。

      所以很多老外写的东西基本上就不会出现taget=“_blank”。他们替换的方案是使用HTML4.0新增的标签rel来表示,rel是用来表明链接和包含此链接页面的关系,以及链接打开的目标。rel有许多的属性值,比如next、previous,、chapter、section等等,还有我们用来拒绝搜索引擎蜘蛛向下爬行的nofollow(这一点很重要,在wordpress中,几乎所有的评论中的用户名的链接都是加了rel=nofollow的,所以想通过在博客中添加评论来增加外链都是徒劳的)。而我们现在要使用的就是rel=”external”属性,用来表示链接将在新窗口中打开。当然,这只是符合strict标准的方法,而并没有真正实现在新窗口开打链接,还需要javasscript的支持。

      思路,在页面载入以后,将rel含有external的a标签,通过js加上target=”_blank“。下面提供jquery方法,代码如下:

      

    <script type="text/javascript">
        jQuery(function($){
            //external加上target="_blank"
            $("a[rel*=external]").attr("target","_blank");
        });
    </script>

    以上只是jquery的实现方式,也是本博使用的方法,js原生方法如下:

    <script type="text/javascript">
        function externalLinks() {
            if (!document.getElementsByTagName) return;
                var anchors = document.getElementsByTagName("a");
                for (var i=0; i<ANCHORS.LENGTH; i++) {
                var anchor = anchors;
                if (anchor.getAttribute(“href”) &&
                anchor.getAttribute(“rel”) == “external”)
                anchor.target = "_blank";
            }
        }
        window.onload = externalLinks;
    </script>

    没有目标的人都只在帮有目标的人完成目标

  • 相关阅读:
    用循环链表求解约瑟夫问题
    Nim游戏变种——取纽扣游戏
    POJ-2726-Holiday Hotel
    常用排序算法总结(二)
    常用排序算法总结(一)
    找出数组中出现次数最多的那个数——主元素问题
    C99新特性:变长数组(VLA)
    linux tftp配置 (Ubuntu18.04)
    Ubuntu 18.04安装Samba服务器及配置
    记录学习Linux遇到的问题
  • 原文地址:https://www.cnblogs.com/tweet/p/2982462.html
Copyright © 2011-2022 走看看