淘宝(taobao.com)的“热词链接”

2008-03-16 16:49:29  作者:  来源:互联网  浏览次数:5  文字大小:[ ]

淘宝(taobao.com)的“热词链接”
by iugo
我也不知道这应该叫做什么,不过一直憧憬着在自己的blog中能有这样的功能。没想到淘宝的网站设计师用js就实现了,佩服!

我把包含代码的“叶子”精简了一下,对js作了简单的注释。希望大家能得到启发。(可以用这个功能得到搜索引擎的广告收益哦)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>淘宝关键词 by iugo</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

<style type="text/css" media="screen">

/* Taobao.com , Created by ChengZhi@taobao.com ; Post by iugo*/

body{
    margin: 0px;
    padding: 0px 10px 0px 10px;
    background-color:#FFF;
    font-size:12px;
    color:#111111;
}
hr{
    border:#000000 0px solid;
    border-top: #D1D7DC 1px solid;
    height: 0px;
}

a:link,a:visited{
    color:#0044DD;
    text-decoration:none;
}
a:hover,a:active{
    color:#FF5500;
    text-decoration:underline;
}
a.ReplaceKeyword{
    text-decoration:none;
    border-bottom:1px dotted #1B83DC;
    color:#1B83DC;
}

</style>
</head>
<body>
<br /><hr />
            <div class="GuideContentInner">
                    <p>  从网上转载的,希望对大家有用~~</p><p>  为了使大家对自己的Q币的去向做到心中有数,特在这里对大家目前比较关心的QQ服务资费,开通关闭方法问题集中回答和说明。<br /><br />  会员号码:10元/月(可以通过Q币,qq卡、手机支付、Vnet互联星空,小灵通、银行卡、拨打电话、请他人支付等方式支付)。<br /><br />  上面只是测试。感谢淘宝,想见赵忠祥。
            </div>
<hr />
<script language="javascript" type="text/javascript">
//<![CDATA[
var allow_keyword = '1';
var url = new Array(); //定义需要添加的关键词
 url['转载'] = ''; url['淘宝'] = ''; url['银行卡'] = ''; url['心中有数'] = '';
var objs = document.getElementsByTagName('div');
var textArea = new Array();

var __index = 0;
if (objs && allow_keyword != '0') {
  for (i = 0; i < objs.length; i++) {
    if (objs[i].className == 'PostContentInner' || objs[i].className == 'GuideContentInner' || objs[i].className == 'ReplyContent' ) {
      textArea[textArea.length] = objs[i]; //定义在哪里启用
    }
  }
}

function __replaceAll() {
    if (textArea.length > __index && allow_keyword != '0') {
        var temp = textArea[__index].innerHTML;
        var searchEngine='http://www.google.com/search?hl=zh-CN&q='; //定义前缀
        for(var keyword in url) {
            var regex = new RegExp('(' + keyword + ')','i');
            
            if(url[keyword]==''){
                url[keyword]=searchEngine+keyword;
            }
            var targeturl=url[keyword];
            if(targeturl.indexOf("CN")>0){ //查链接中是否有“?”,有则加后缀“&from=forum48”
                targeturl=targeturl+'&lr=';
            }else{
                targeturl=targeturl+'&lr=lang_zh-CN';
            }
            var searchText = "<a href=\"" + targeturl +"\" target=\"_blank\" class=\"ReplaceKeyword\">$1</a>" //添加链接的模板
            temp = temp.replace(regex, searchText);
        }
        textArea[__index].innerHTML = temp;
        __index = __index + 1;
        setTimeout('__replaceAll()', 500);
    }
}

if (allow_keyword != '0') {
    __replaceAll();
}
//]]>
</script>

</body>
</html>

0

顶一下

w3站长

首页
责任编辑:jql
今日DIGG排行