鸟食轩

 Microsoft .NET[C#] MVP 2003
随笔 - 424, 文章 - 233, 评论 - 5418, 引用 - 344
数据加载中……

用脚本为本blog增加了几项自定义功能

    这段时间的工作主要是研究客户端的脚本编程,所以顺便使用脚本为blog提供了几个小功能,这些功能有的是便于读者阅读,而有的是便于作者管理blog的。包括:banner广播、页面反色、搜索跟踪和Google广告。下面分别说说他们是怎么弄得。

    从上到下说吧,第一个添加一个Banner广播,这个是干什么用的呢?就是写一些问候的话语放在这里了,效果如下图:
    Blog-01.png
    这个广播播的内容是:怎么老是这些广告啊,真是烦人:<
    这个东西的实现基于了页面的布局,这个Banner条目的位置正好是我使用这个主题的一个ID为sub的DIV里。所以我替换DIV里的内容,就弄出这个广播了。我这里都是介绍google广告的,当然你可以自己订制放任何的东西。
    添加Banner广播的代码如下:
<script language="javascript"></script>

Blog-02.png    第二个功能是增加了一个页面色彩反转,其开关在'公告'下的计数器旁边(如右图),您可以自己选择是否将页面反色,并且现在的结果会保存在cookie里,将在以后的浏览中继续生效。这个功能其实提供了又一段时间了,不过一直没有提供customize,也就一直没有介绍。后来居然搞得有人抱怨说在反色状态下老是点错滚动条
    第三个功能是提供了一个Google的广告,是通过Google AdSense计划加入的。由于Google广告是先详细分析页面内容,然后再提供与页面紧密相关的广告条目,所以可以给浏览文章的人提示很友好的广告内容。当然点击Google也会给我们带来一点点的好处,AdSense是会根据点击付费的。
    第四个功能是增强了'搜索跟踪'功能,原来我曾介绍过通过注入脚本给页面添加了一个GoogleTrack的功能。不过后来我发现对于中文内容的搜索,Baidu还是有其优势的,本来我对Baidu有些成见(因为有一年Google被阿共封锁了,www.google.com居然被解析成了baidu@_@)。但是这么长时间了,Baidu也还是在进步,何必老是翻那些陈年老账呢,要于时俱进嘛,所以又添加了一个'百度跟踪'。而且可以通过右图下端的一组RadioButton来选择使用什么Track,它们分别是:GoogleTrack,BaiduTrack和随机选取Tracker。
    注入Search Tracker的代码如下: 
<script Language="javascript"></script>

    由于Baidu搜索引擎接受的是GB码的escape形式,所以在代码使用了一段VBScript来编码。
<script language="vbscript"> 
function vbGetGBCode(str) 
    
dim i, length, s 
    length 
= len(str) 
    
for i=1 to length 
        hexCode 
= hex(asc(str.charAt(i-1))) 
        
if (len(hexCode) mod 2= 0 then
            s 
= s & "%" & mid(hexCode, 12)
            
if ( len(hexCode) = 4 ) then
                 s 
= s & "%" & mid(hexCode, 32)
            
end if 
        
else 
            s 
= s & "%0" & hexCode 
        
end if 
    
next 
    vbGetGBCode 
= s 
end function 
</script> 

    而Google搜索引擎是接受encodeURIComponent的编码,所以就简单多了。


    注入百度Tracker的效果如图所示:

    Blog-03.png

    本来这些功能除了反色以外都可以很容易的在服务器端做的,不过毛主席不是教导过大家'自己动手风衣足食'嘛

posted on 2005-02-03 00:05 birdshome 阅读(1659) 评论(14)  编辑 收藏 所属分类: Jscript&Dhtml开发

评论

#1楼    回复  引用  查看    

你好,我想问一下,文章中的图片效果是用什么工具处理的?
2005-02-03 08:25 | Duiker      

#2楼    回复  引用  查看    

很专业的一个截屏软件SnagIt,稍微用点技巧可以把鼠标也截获在你希望的位置上。
2005-02-03 10:47 | birdshome      

#3楼    回复  引用  查看    

我怎么在SnagIt里没找到相应功能?
我用的是SnagIt 6。
2005-02-03 12:48 | Maverick      

#4楼 [楼主]   回复  引用  查看    

Main Menu: Effects -> Edge Effects ->Tron Edge
2005-02-03 13:15 | birdshome      

#5楼    回复  引用    

怎么没有任何的效果啊?没有看见banner广播,点击"Invert"按钮也不能反色。
2005-02-04 12:08 | buxing [未注册用户]

#6楼    回复  引用  查看    

没有效果?! 浏览器左下角显示脚本错误了吗?是用的IE吧?
2005-02-04 17:09 | birdshome      

#7楼    回复  引用    

是用的IE,就是什么都没有,也没有错误。
2005-02-04 20:13 | buxing [未注册用户]

#8楼    回复  引用  查看    

这样代码添到哪里才能生效呀?
2005-03-16 02:59 | 剑客      

#9楼    回复  引用  查看    

@剑客
加在公告里面就行了
2005-03-16 10:36 | birdshome      

#10楼