今天是:
设为首页 加入收藏
  首页  文章  下载  小说  幽默  IT  QQ家园  小店  FLASH  汽车  
您现在的位置: 星雨小站 >> 文章 >> 电脑技术 >> 网页制作 >> 经验技巧 >> 文章正文 用户登录 新用户注册
多彩链接靓起来         
多彩链接靓起来
作者:admin 文章来源:本站原创 点击数: 更新时间:2004-12-1 20:50:37

网页中鼠标指到链接文字时,一般会变换颜色或者加下滑线,久而久之不免给人单调之感。下面介绍的多彩链接则是一种与众不同的链接风格:鼠标滑过时,文字会不断从一种色彩自然过渡到另一种色彩。下面通过javascript代码来实现此效果。

  在网页文件的<body></body>之间插入以下代码:

  <script>

  //定义变色控制变量

  var rate = 20; //色彩变化的速度,值越大变化越快

  var obj; //鼠标滑过事件所对应的对象元素

  var act = 0; // act=1表示已在变色

  var elmH = 0; // 色彩

  var elmS = 128; // 饱和度

  var elmV = 255; // R、G、B最高值

  var clrOrg;//文字原色

  var TimerID; // 计时器标志

  //检测浏览器类型,控制启用及停止此链接风格

  //如果浏览器是为Microsoft Internet Explorer 4.0以上,Brower为真

  if (navigator.appName.indexOf("Microsoft",0) != -1 &&

  parseInt(navigator.appVersion) >= 4) {

  Browser = true;} else {Browser = false; }

  if (Browser)

  {document.onmouseover = doRainbowAnchor;//鼠标滑过时变色

  document.onmouseout = stopRainbowAnchor;}//鼠标移走停止变色并恢复原色

  function doRainbowAnchor()//启用此风格

  {if (Browser && act != 1) {

  obj = event.srcElement;//鼠标滑过事件所对应的对象元素

  while (obj.tagName != 'A' && obj.tagName != 'BODY') {//tagname指元素的标签名,像A、BODY等

  obj = obj.parentElement; //当标签不是A或BODY时,取父元素标签

  if (obj.tagName == 'A' || obj.tagName == 'BODY') break;}

  if (obj.tagName == 'A' && obj.href != '') {

  act = 1;

  clrOrg = obj.style.color; //保存变化前的颜色

  TimerID = setInterval("ChangeColor()",100);//启动计时器,每隔0.1秒变色,时间可自己调节,1000表示1秒

  }}}

  function stopRainbowAnchor()//停用此风格

  {if (Browser && act != 0) {

  if (obj.tagName == 'A') {

  obj.style.color = clrOrg;//恢复变化前的颜色

  clearInterval(TimerID);//停止计时器

  act = 0;}}}

  //通过改变RGB值来获得不同的文字颜色

  function ChangeColor()

  { obj.style.color = makeColor();}

  function makeColor()

  {if (elmS == 0) {

  elmR = elmV; elmG = elmV; elmB = elmV;}

  else { t1 = elmV;

  t2 = (255 - elmS) * elmV/255;

  t3 = elmH % 60;

  t3 = (t1 - t2) * t3/60;

  //不同色彩,不同RGB值

  if (elmH < 60) {elmR = t1; elmB = t2; elmG = t2 + t3;}

  else if (elmH < 120) {elmG = t1; elmB = t2; elmR = t1 - t3;}

  else if (elmH < 180) {elmG = t1; elmR = t2; elmB = t2 + t3;}

  else if (elmH < 240) {elmB = t1; elmR = t2; elmG = t1 - t3;}

  else if (elmH < 300) {elmB = t1; elmG = t2; elmR = t2 + t3;}

  else if (elmH < 360) {elmR = t1; elmG = t2; elmB = t1 - t3;}

  else {elmR = 0; elmG = 0; elmB = 0;}}

  elmR = Math.floor(elmR);//取整RGB值

  elmG = Math.floor(elmG);

  elmB = Math.floor(elmB);

  clrRGB = '#' + elmR.toString(16) + elmG.toString(16) + elmB.toString(16);//转化为十六进制的颜色值

  elmH = elmH + rate;//改变色彩,再产生不同RGB组合

  if (elmH >= 360) elmH = 0;

  return clrRGB;} //返回新的RGB组合值

  </script>

  <p><a href="http//www.cpcw.com">多彩链接演示</a></p>

  添加完成后存盘用IE看看,意外吧?

  以上代码并不复杂,网页编辑者可查看注释,在理解的基础上灵活运用。

- -

中搜索与
的相似内容
立刻搜索→

文章录入:admin    责任编辑:小雨 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口



    推荐文章[组图]无损硬盘数据调整…
    普通文章上线[问好,打招呼] QQ表…
    普通文章拜拜[再见,晚安,下线] …
    普通文章钱[钞票,大款] QQ表情
    普通文章[组图]应知应会的5个图…
    普通文章跟我学用“记事本”
    普通文章用好Windows自带的录音…
    普通文章来测试你的网速-比比看…
    推荐文章文件夹加密过程中因误操…
    推荐文章[组图]无损硬盘数据调整…
    推荐文章能够安装多个杀毒软件吗…
    推荐文章爱情专用系列 QQ表情
    推荐文章用画图工具给图片添加文…
    推荐文章老公增加零花钱的请示报…
    推荐文章QQ搞笑表情(二) QQ表情
    推荐文章悠嘻猴 QQ表情
    去掉表格的辅助线
    Dreamweaver MX 2004中…
    让FLASH动画的北景透明
    用css美化表格边框
    有关表格边框的css语法…
    驯服不听话的网页表格
    轻松随意设置网页水平…
    为你的网页添加背景音…
    网页编辑常用表现的实…
    用PHP实现单击广告后才…
    用ASP实现动态IP转向
    畅通无阻传主页到您国…
    做网页巧用Wingdings图…
    自己的新闻系统纯HTML…
    EXCEL表在网页制作中的…

    糯米猪系列 QQ表情

    愚人节qq表情 QQ表情

    花脸猫系列 QQ表情

    uc表情系列 QQ表情
    (只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    版权所有 Copyright© 2004-2005 星空联盟工作室 EMAIL:xingyu@xyu01.com
    给我发消息 给我发消息

    本站Alaxa全球网站排名 (点击查看)(安装Alexa工具条,查看各大网站全球排名)