风讯官方论坛

首页 » FoosunCMS交流区 » 模板风格 » [分享]一些js经典代码收集
snake - 2005-4-24 21:12:00

1· 如何使图片在网页中游动



<script LANGUAGE="JavaScript">
var brOK=false;
var mie=false;
var aver=parseInt(navigator.appVersion.substring(0,1));
var aname=navigator.appName;
function checkbrOK()
{if(aname.indexOf("Internet Explorer")!=-1)
{if(aver>=4) brOK=navigator.javaEnabled();
mie=true;
}
if(aname.indexOf("Netscape")!=-1)
{if(aver>=4) brOK=navigator.javaEnabled();}
}
var vmin=2;
var vmax=5;
var vr=0.02;
var timer1;
function Chip(chipname,width,height)
{this.named=chipname;
this.vx=vmin+vmax*Math.random();
this.vy=vmin+vmax*Math.random();
this.w=width;
this.h=height;
this.xx=0;
this.yy=0;
this.timer1=null;
}
function movechip(chipname)
{
if(brOK)
{eval("chip="+chipname);
if(!mie)
{pageX=window.pageXOffset;
pageW=window.innerWidth;
pageY=window.pageYOffset;
pageH=window.innerHeight;
}
else
{pageX=window.document.body.scrollLeft;
pageW=window.document.body.offsetWidth-22;
pageY=window.document.body.scrollTop;
pageH=window.document.body.offsetHeight-34;
}


chip.xx=chip.xx+chip.vx;
chip.yy=chip.yy+chip.vy;


chip.vx+=vr*(Math.random()-0.5);
chip.vy+=vr*(Math.random()-0.5);
if(chip.vx>(vmax+vmin)) chip.vx=(vmax+vmin)*2-chip.vx;
if(chip.vx<(-vmax-vmin)) chip.vx=(-vmax-vmin)*2-chip.vx;
if(chip.vy>(vmax+vmin)) chip.vy=(vmax+vmin)*2-chip.vy;
if(chip.vy<(-vmax-vmin)) chip.vy=(-vmax-vmin)*2-chip.vy;
if(chip.xx<=pageX)
{chip.xx=pageX;
chip.vx=vmin+vmax*Math.random();
}
if(chip.xx>=pageX+pageW-chip.w)
{chip.xx=pageX+pageW-chip.w;
chip.vx=-vmin-vmax*Math.random();
}
if(chip.yy<=pageY)
{chip.yy=pageY;
chip.vy=vmin+vmax*Math.random();
}
if(chip.yy>=pageY+pageH-chip.h)
{chip.yy=pageY+pageH-chip.h;
chip.vy=-vmin-vmax*Math.random();
}
if(!mie)
{eval('document.'+chip.named+'.top ='+chip.yy);
eval('document.'+chip.named+'.left='+chip.xx);
}
else
{eval('document.all.'+chip.named+'.style.pixelLeft='+chip.xx);
eval('document.all.'+chip.named+'.style.pixelTop ='+chip.yy);
}
chip.timer1=setTimeout("movechip('"+chip.named+"')",140);
}
}
function hide(chipname){
if(brOK){
eval("chip="+chipname);
if(!mie)
eval('document.'+chip.named+'.visibility ='+"'hide'");
else
eval('document.all.'+chip.named+'.style.visibility ='+"'hidden'");
}
}


function stopme(chipname)
{if(brOK)
{//alert(chipname)
eval("chip="+chipname);
if(chip.timer1!=null)
{clearTimeout(chip.timer1)}
}
}
var chip1;
function pagestart()
{checkbrOK();
chip1=new Chip("chip1",117,75);
if(brOK)
{ movechip("chip1");
}
}
file://if(brOK) {stopme('chip1');}
</script>
<DIV id=chip1
style="height: 105; position: absolute; visibility: visible; width: 140; left: 180; top: 157">
<TABLE border=0 cellPadding=4 cellSpacing=0 class=bd width=60>
<TBODY>
<TR>
<TD align=middle class=bg2><a href="http://www.800du.com/new_page_22.htm/"><img border="0" src="new_pa22.gif" width="150" height="80"></a></TD></TR></TBODY></TABLE></DIV>
<SCRIPT event=onload for=window language=JavaScript>
pagestart();
</SCRIPT>



说明: src="new_pa22.gif"改为你自己的图片,就可以了

snake - 2005-4-24 21:13:00

2· 如何实现网页的自动滚屏显示


当网页中有长篇文章时,浏览起来就比较吃劲了,想想一边忙着拖动滚动条,一边忙着浏览,确实挺累人的。为了让人能轻轻松松的浏览,我们可以使用script代码实现网页的自动滚屏,当双击网页的时候,网页将会自动向下滚动,再次单击时滚动停止。将下面的代码插入到<body> </body>之间。


<script language"javascript">
var currentpos,timer;
function initialize()
{
timer=setInterval("scrollwindow()",10);
}
function sc(){
clearInterval(timer);
}
function scrollwindow()
{
currentpos=document.body.scrollTop;
window.scroll(0,++currentpos);
if (currentpos != document.body.scrollTop)
sc();
}
document.onmousedown=sc
document.ondblclick=initialize
</script>


snake - 2005-4-24 21:13:00

3· 如何给网页滚动条加上颜色


只要在网页代码<head> </head>之间插入下面的代码,即可随心所欲地更改滚动条的颜色了。


<style>
body {SCROLLBAR-FACE-COLOR:#FF5500;(立体滚动条凸出部分的颜色)
SCROLLBAR-HIGHLIGHT-COLOR:#0FC000;(滚动条空白部分的颜色)
SCROLLBAR-SHADOW-COLOR:#FF8040;(立体滚动条阴影的颜色)
SCROLLBAR-ARROW-COLOR:#FF8040;(上下按钮上三角箭头的颜色)
SCROLLBAR-BASE-COLOR:#FFFFF9; (滚动条的基本颜色)
SCROLLBAR-DARK-SHADOW-COLOR:#FFFFFF} (立体滚动条强阴影的颜色)
</style>
snake - 2005-4-24 21:14:00

4· 在线音乐播放器代码


新版播放器代码 面世咯~~~(第三版)
这是第三版播放器的代码:
分两种:(注意:只能使用一种代码,不要将两种代码放在同一个页面中!)


    第一种带显示同步歌词功能代码是:<script language="javascript" src="http://y365.com/danlovesary/music/music3.js"></script>
界面尺寸:宽 650 像素 高 50 像素
      第二种不显示同步歌词,代码是:<script language="javascript" src="http://y365.com/danlovesary/music/music3-2.js"></script>

界面尺寸:宽 650 像素 高 25 像素
新的界面(漂亮哟)

snake - 2005-4-24 21:15:00

5· 输入你的出生年,程序就自动算出你的生肖


************** 脚本说明 ***************
把如下代码加入<body>区域中


<SCRIPT language=JavaScript>
<!--
function getpet () {

        var toyear = 1997;
        var birthyear = document.frm.inyear.value;
        var birthpet="Ox"

        x = (toyear - birthyear) % 12
        if ((x == 1) || (x == -11)) {
            birthpet="您属老鼠"      }
            else  {
            if (x == 0)            {
            birthpet="您属牛"          }
            else  {
              if ((x == 11) || (x == -1)) {
              birthpet="您属老虎"          }
              else  {
              if ((x == 10) || (x == -2)) {
              birthpet="您属兔子"        }
              else  {
                if ((x == 9) || (x == -3))  {
                birthpet="您属龙"        }
                else  {
                if ((x == 8) || (x == -4))  { 
                birthpet="您属蛇"      }
                else  {
                  if ((x == 7) || (x == -5))  { 
                  birthpet="您属马"      }
                  else  {
                  if ((x == 6) || (x == -6))  { 
                  birthpet="您属羊"      }
                  else  {
                    if ((x == 5) || (x == -7))  { 
                    birthpet="您属猴"    }
                    else  {
                    if ((x == 4) || (x == -8))  {
                    birthpet="您属鸡"    }
                    else  {
                      if ((x == 3) || (x == -9))  {
                      birthpet="您属狗"        }
                      else  {
                        if ((x == 2) || (x == -10))  {
                      birthpet="您属猪"        } 
                      }
                    }
                    }
                  }
                  }
                }
                }
              }
              }
            }
            }
        document.frm.birth.value = birthpet;

}
// -->
</SCRIPT>
<FORM name=frm>
出生年份:<INPUT name=inyear size=4 value=1975> <BR><INPUT onclick=getpet() type=button value=看看属什么><INPUT name=birth size=9></FORM>
snake - 2005-4-24 21:15:00

6· 网页上漂动的广告代码


************** 脚本说明 ***************


把如下代码加入<body>区域中
<div id="img" style="position:absolute;; left: 27px; top: 1115px"> <a href="http://www.joi.8u8.com/java/pic/31_1.gif" target="_blank">
  </a><a href="http://www.joi.8u8.com"; target="_blank"><img src="http://www.joi.8u8.com/java/pic/31_3.gif" width="150" height="89" border="0" ></a><a href="http://http://www.joi.8u8.com/java/pic/31_2.gif" target="_blank">
  </a> </div>
<script language="javascript">
<!-- Begin
var xPos = 20;
var yPos = document.body.clientHeight;
var step = 1;
var delay = 30;
var height = 0;
var Hoffset = 0;
var Woffset = 0;
var yon = 0;
var xon = 0;
var pause = true;
var interval;
img.style.top = yPos;
function changePos() {
width = document.body.clientWidth;
height = document.body.clientHeight;
Hoffset = img.offsetHeight;
Woffset = img.offsetWidth;
img.style.left = xPos + document.body.scrollLeft;
img.style.top = yPos + document.body.scrollTop;
if (yon) {
yPos = yPos + step;
}
else {
yPos = yPos - step;
}
if (yPos < 0) {
yon = 1;
yPos = 0;
}
if (yPos >= (height - Hoffset)) {
yon = 0;
yPos = (height - Hoffset);
}
if (xon) {
xPos = xPos + step;
}
else {
xPos = xPos - step;
}
if (xPos < 0) {
xon = 1;
xPos = 0;
}
if (xPos >= (width - Woffset)) {
xon = 0;
xPos = (width - Woffset);
  }
}
function start() {
img.visibility = "visible";
interval = setInterval('changePos()', delay);
}<br>
start();
//  End -->
</script>
<span id="superball"></span>
snake - 2005-4-24 21:16:00

7· 用弹出窗口显示链接的图片



************** 脚本说明 ***************
把如下代码加入<body>区域中
<SCRIPT>
function DynaWin(url, h, w, l, t) {
poph = + h + 70
popw = + w + 30
disp = window.open("","pop","height=" + poph + ",width=" + popw + ",left=" + l + ",top=" + t + "");
content = '<HTML>';
content += '<TITLE>弹出窗口</TITLE>';
content += '</HEAD>';
content += '<BODY BACKGROUND="yourfile" onBlur="self.close()">';
content += '<P ALIGN="CENTER"><img src="path to image' + url + '" height="' + h + '" width="' + w + '"></P>';
content += '<H3 ALIGN="CENTER"><A HREF="#" onClick="self.close()">关闭窗口</A></H3>';
content += '</BODY></HTML>';
disp.document.write(content);
disp.document.close();
}
</SCRIPT>
<A HREF="#" onClick="DynaWin('../pic/33_1.jpg', '300', '300', '30', '30')";>打开图片</A>

snake - 2005-4-24 21:16:00

8· 连续滚动的图片,并且图片可以链接指定页面


************** 脚本说明 ***************
把如下代码加入<body>区域中



<script language="JavaScript1.2">


file://Specify the slider's width (in pixels)
var sliderwidth=300
file://Specify the slider's height
var sliderheight=150
file://Specify the slider's slide speed (larger is faster 1-10)
var slidespeed=3
file://configure background color:
slidebgcolor="#EAEAEA"


file://Specify the slider's images
var leftrightslide=new Array()
var finalslide=''
leftrightslide[0]='<a href="http://www.joi.8u8.com"><img src="../pic/31_1.gif" border=1></a>'
leftrightslide[1]='<a href="http://www.joi.8u8.com"><img src="../pic/31_2.gif" border=1></a>'
leftrightslide[2]='<a href="http://www.joi.8u8.com"><img src="../pic/31_3.gif" border=1></a>'
leftrightslide[3]='<a href="http://www.joi.8u8.com"><img src="../pic/31_4.gif" border=1></a>'
leftrightslide[4]='<a href="http://www.joi.8u8.com"><img src="../pic/31_5.gif" border=1></a>'



////NO NEED TO EDIT BELOW THIS LINE////////////


var copyspeed=slidespeed
leftrightslide='<nobr>'+leftrightslide.join(" ")+'</nobr>'
var iedom=document.all||document.getElementById
if (iedom)
document.write('<span id="temp" style="visibility:hidden;position:absolute;top:-100;left:-3000">'+leftrightslide+'</span>')
var actualwidth=''
var cross_slide, ns_slide


function fillup(){
if (iedom){
cross_slide=document.getElementById? document.getElementById("test2") : document.all.test2
cross_slide2=document.getElementById? document.getElementById("test3") : document.all.test3
cross_slide.innerHTML=cross_slide2.innerHTML=leftrightslide
actualwidth=document.all? cross_slide.offsetWidth : document.getElementById("temp").offsetWidth
cross_slide2.style.left=actualwidth+20
}
else if (document.layers){
ns_slide=document.ns_slidemenu.document.ns_slidemenu2
ns_slide2=document.ns_slidemenu.document.ns_slidemenu3
ns_slide.document.write(leftrightslide)
ns_slide.document.close()
actualwidth=ns_slide.document.width
ns_slide2.left=actualwidth+20
ns_slide2.document.write(leftrightslide)
ns_slide2.document.close()
}
lefttime=setInterval("slideleft()",30)
}
window.onload=fillup


function slideleft(){
if (iedom){
if (parseInt(cross_slide.style.left)>(actualwidth*(-1)+8))
cross_slide.style.left=parseInt(cross_slide.style.left)-copyspeed
else
cross_slide.style.left=parseInt(cross_slide2.style.left)+actualwidth+30


if (parseInt(cross_slide2.style.left)>(actualwidth*(-1)+8))
cross_slide2.style.left=parseInt(cross_slide2.style.left)-copyspeed
else
cross_slide2.style.left=parseInt(cross_slide.style.left)+actualwidth+30


}
else if (document.layers){
if (ns_slide.left>(actualwidth*(-1)+8))
ns_slide.left-=copyspeed
else
ns_slide.left=ns_slide2.left+actualwidth+30


if (ns_slide2.left>(actualwidth*(-1)+8))
ns_slide2.left-=copyspeed
else
ns_slide2.left=ns_slide.left+actualwidth+30
}
}



if (iedom||document.layers){
with (document){
document.write('<table border="0" cellspacing="0" cellpadding="0"><td>')
if (iedom){
write('<div style="position:relative;width:'+sliderwidth+';height:'+sliderheight+';overflow:hidden">')
write('<div style="position:absolute;width:'+sliderwidth+';height:'+sliderheight+';background-color:'+slidebgcolor+'" onMouseover="copyspeed=0" onMouseout="copyspeed=slidespeed">')
write('<div id="test2" style="position:absolute;left:0;top:0"></div>')
write('<div id="test3" style="position:absolute;left:-1000;top:0"></div>')
write('</div></div>')
}
else if (document.layers){
write('<ilayer width='+sliderwidth+' height='+sliderheight+' name="ns_slidemenu" bgColor='+slidebgcolor+'>')
write('<layer name="ns_slidemenu2" left=0 top=0 onMouseover="copyspeed=0" onMouseout="copyspeed=slidespeed"></layer>')
write('<layer name="ns_slidemenu3" left=0 top=0 onMouseover="copyspeed=0" onMouseout="copyspeed=slidespeed"></layer>')
write('</ilayer>')
}
document.write('</td></table>')
}
}
</script>

snake - 2005-4-24 21:17:00

9· 图片滚动显示,每次图片指向连接都不同



************** 脚本说明 ***************
把如下代码加入<body>区域中
<script language="JavaScript1.2">
<!--
/*设置下面的参数。 设置scrollerwidth和scrollerheight参数,设置成滚动显示的图片中尺寸最大的。*/
var scrollerwidth=111
var scrollerheight=140
var scrollerbgcolor='white'
file://每个图间暂停3秒。
var pausebetweenimages=3000
file://边界下面的行,如果希望logo都是带连接的,只要加上<a>标签即可。
var slideimages=new Array()
slideimages[0]='<a href="http://www.joi.8u8.com/"><img src="../pic/33_1.jpg" border=0"></a>'
slideimages[1]='<a href="http://www.joi.8u8.com/"><img src="../pic/33_2.jpg"></a>'
slideimages[2]='<a href="http://www.joi.8u8.com/"><img src="../pic/33_3.jpg"></a>'
file://尽管填加更多的。
//////以下不要修改////////////////
if (slideimages.length>1)
i=2
else
i=0
function move1(whichlayer){
tlayer=eval(whichlayer)
if (tlayer.top>0&&tlayer.top<=5){
tlayer.top=0
setTimeout("move1(tlayer)",pausebetweenimages)
setTimeout("move2(document.main.document.second)",pausebetweenimages)
return
}
if (tlayer.top>=tlayer.document.height*-1){
tlayer.top-=5
setTimeout("move1(tlayer)",100)
}
else{
tlayer.top=scrollerheight
tlayer.document.write(slideimages)
tlayer.document.close()
if (i==slideimages.length-1)
i=0
else
i++
}}
function move2(whichlayer){
tlayer2=eval(whichlayer)
if (tlayer2.top>0&&tlayer2.top<=5){
tlayer2.top=0
setTimeout("move2(tlayer2)",pausebetweenimages)
setTimeout("move1(document.main.document.first)",pausebetweenimages)
return
}
if (tlayer2.top>=tlayer2.document.height*-1){
tlayer2.top-=5
setTimeout("move2(tlayer2)",100)
}
else{
tlayer2.top=scrollerheight
tlayer2.document.write(slideimages)
tlayer2.document.close()
if (i==slideimages.length-1)
i=0
else
i++
}}
function move3(whichdiv){
tdiv=eval(whichdiv)
if (tdiv.style.pixelTop>0&&tdiv.style.pixelTop<=5){
tdiv.style.pixelTop=0
setTimeout("move3(tdiv)",pausebetweenimages)
setTimeout("move4(second2)",pausebetweenimages)
return
}
if (tdiv.style.pixelTop>=tdiv.offsetHeight*-1){
tdiv.style.pixelTop-=5
setTimeout("move3(tdiv)",100)
}
else{
tdiv.style.pixelTop=scrollerheight
tdiv.innerHTML=slideimages
if (i==slideimages.length-1)
i=0
else
i++
}
}
function move4(whichdiv){
tdiv2=eval(whichdiv)
if (tdiv2.style.pixelTop>0&&tdiv2.style.pixelTop<=5){
tdiv2.style.pixelTop=0
setTimeout("move4(tdiv2)",pausebetweenimages)
setTimeout("move3(first2)",pausebetweenimages)
return
}
if (tdiv2.style.pixelTop>=tdiv2.offsetHeight*-1){
tdiv2.style.pixelTop-=5
setTimeout("move4(second2)",100)
}
else{
tdiv2.style.pixelTop=scrollerheight
tdiv2.innerHTML=slideimages
if (i==slideimages.length-1)
i=0
else
i++
}}
function startscroll(){
if (document.all){
move3(first2)
second2.style.top=scrollerheight
}
else if (document.layers){
move1(document.main.document.first)
document.main.document.second.top=scrollerheight+5
document.main.document.second.visibility='show'
}}
window.onload=startscroll
file://-->
</script> <ilayer id="main" width="&{scrollerwidth};" height="&{scrollerheight};" bgcolor="&{scrollerbgcolor};"> <layer id="first" left="0" top="1" width="&{scrollerwidth};"> <script
language="JavaScript1.2">
if (document.layers)
document.write(slideimages[0])
</script> </layer> <layer id="second" left="0" top="0" width="&{scrollerwidth};" visibility="hide"> <script language="JavaScript1.2">
if (document.layers)
document.write(slideimages[1])
</script> </layer> </ilayer> </p>
<p><script language="JavaScript1.2">
<!--
if (document.all){
document.writeln('<span id="main2" style="position:relative;width:'+scrollerwidth+';height:'+scrollerheight+';overflow:hiden;background-color:'+scrollerbgcolor+'">')
document.writeln('<div style="position:absolute;width:'+scrollerwidth+';height:'+scrollerheight+';clip:rect(0 '+scrollerwidth+' '+scrollerheight+' 0);left:0;top:0">')
document.writeln('<div id="first2" style="position:absolute;width:'+scrollerwidth+';left:0;top:1;">')
document.write(slideimages[0])
document.writeln('</div>')
document.writeln('<div id="second2" style="position:absolute;width:'+scrollerwidth+';left:0;top:0">')
document.write(slideimages[1])
document.writeln('</div>')
document.writeln('</div>')
document.writeln('</span>')
}
file://--></script>

snake - 2005-4-24 21:17:00

10· 渐变的文字转换 flash样式


************** 脚本说明 ***************
把如下代码加入<body>区域中



<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
var qiksearch_js_text = new Array ("Hi 你好!", "欢迎你的光临", "JavaScript<br>资源库", "博宝网页特效");
var qiksearch_space_width = 390; // The width of the content space
var qiksearch_space_height = 50; // The height of the content space
var qiksearch_space_borderw=3; // Border width
var qiksearch_space_borderc="#CC0000"; // Border Color
var timeOutVal=150; // Delay in milliseconds


file://--------------------------------------------------------------------------------------------


file://-----------------------------DO-NOT-MODIFY-BELOW-THIS---------------------------------------


document.write('<table width="' + qiksearch_space_width + '" height="' + qiksearch_space_height + '" style="background:#FFFFFF; border:' + qiksearch_space_borderw + ' solid ' + qiksearch_space_borderc + '"><tr><td align="middle">');
document.write('<div id="qiksearch_js_space">');
document.write('</div>');
document.write('</td></tr></table>');


var def_10='A',def_11='B',def_12='C',def_13='D',def_14='E',def_15='F';
var colorVal=15;
var div_count=0;


function qiksearch_fade_desat(getColorIntVal)
{
var returnVal;
if(getColorIntVal>=10)
{
  for(var i=0; i<=15; i++)
  {
  if((getColorIntVal==i))
  {
    returnVal = eval('def_' + i);
  }
  }
}
else
{
  returnVal=getColorIntVal;
}
return(returnVal);
}


function writeDiv()
{
document.all.qiksearch_js_space.innerHTML= '<font face="verdana,arial,helvetica" size="-1" color="' +  joinColor(qiksearch_fade_desat(colorVal)) + '"><b>' + qiksearch_js_text[div_count] + '</span></b></font>' ;


if((colorVal>0)  && (colorVal!=0))
{
  colorVal--;
}
else
{
  colorVal=15;
  if(div_count<qiksearch_js_text.length)
  {
  div_count++;
  }
  if(div_count==qiksearch_js_text.length)
  {
  document.all.qiksearch_js_space.innerHTML = '<a href="javascript:resetAll();writeDiv();" style="text-decoration:none" accesskey="l"><font color="#808080" face="verdana,arial,helvetica" size="-1"><b>再来一遍吗?</b></font></a>';
  }
}


if(div_count<qiksearch_js_text.length)
{
  setTimeout("writeDiv()",timeOutVal);
}
}


function joinColor(getColor)
{
return (getColor + '0' + getColor + '0' + getColor + '0');
}


function resetAll()
{
div_count=0;
colorVal=15;
}


writeDiv();
//  End -->
</script>

snake - 2005-4-24 21:18:00

11· 鼠标下的文字说明


脚本描述:鼠标放到文字上后会在鼠标下方出现文字说明
************** 脚本说明 ***************
把如下代码加入<body>区域中


<div style="position:absolute;z-index:1;visibility:hide" id="overDiv"></div>
<script language="JavaScript">
<!--
ns4 = (document.layers)? true:false
ie4 = (document.all)? true:false
if (ie4) {
if (navigator.userAgent.indexOf('MSIE 5')>0) {
ie5 = true;
}
else {
ie5 = false;
}
}
else {
ie5 = false;
}
var x = 0;
var y = 0;
var snow = 0;
var sw = 0;
var cnt = 0;
var dir = 1;
if ( (ns4) || (ie4) ) {
if (ns4) over = document.overDiv
if (ie4) over = overDiv.style
document.onmousemove = mouseMove
if (ns4) document.captureEvents(Event.MOUSEMOVE)
}
function drc(text, title, osy) {
dtc(1, text, title, osy);
}
function dlc(text, title, osy) {
dtc(0, text, title, osy);
}
function dcc(text, title, osy) {
dtc(2, text, title, osy);
}
function nd() {
if ( cnt >= 1 ) { sw = 0 };
if ( (ns4) || (ie4) ) {
if ( sw == 0 ) {
snow = 0;
hideObject(over);
}
else {
cnt++;
}
}
}
function dtc(d, text, title, osy) {
txt = text
layerWrite(txt);
dir = d;
offsety = osy;
disp();
}
function disp() {
if ( (ns4) || (ie4) ) {
if (snow == 0) {
if (dir == 2) {
moveTo(over,x,y+10);
}
if (dir == 1) {
moveTo(over,x,y+10);
}
if (dir == 0) {
moveTo(over,x,y+10);
}
showObject(over);
snow = 1;
}
}
}
function mouseMove(e) {
if (ns4) {x=e.pageX; y=e.pageY;
}
if (ie4) {x=event.x; y=event.y;
}
if (ie5) {x=event.x+document.body.scrollLeft; y=event.y+document.body.scrollTop;
}
if (snow) {
if (dir == 2) {
moveTo(over,x,y+10);
}
if (dir == 1) {
moveTo(over,x,y+10);
}
if (dir == 0) {
moveTo(over,x,y+10);
}
}
}
function cClick() {
hideObject(over);
sw=0;
}
function layerWrite(txt) {
if (ns4) {
var lyr = document.overDiv.document
lyr.write(txt)
lyr.close()
}
else if (ie4) document.all["overDiv"].innerHTML = txt
}
function showObject(obj) {
if (ns4) obj.visibility = "show"
else if (ie4) obj.visibility = "visible"
}
function hideObject(obj) {
if (ns4) obj.visibility = "hide"
else if (ie4) obj.visibility = "hidden"
}
function moveTo(obj,xL,yL) {
obj.left = xL
obj.top = yL
}
file://-->
</script>
<p>| <a href="middle.htm" target="main" onmouseover="dcc('<div style=margin-left:10;margin-top:10>这里是鼠标下出现的字</div>','','20')" onmouseout="nd()">这里是您的标题</a> | mos | profile |
<a href="http://www.jzzy.com" target="main" onmouseover="dcc('<div style=margin-left:10;margin-top:10>这里是鼠标下出现的字</div>','','20')" onmouseout="nd()">这里是您的标题</a> | <a href="#" target="main" onmouseover="dcc('<div style=margin-left:10;margin-top:10>这里是鼠标下出现的字~</div>','','20')" onmouseout="nd()">这里是您的标题</a> | fanart | audio |
<a href="http://www.jzzy.com" target="main" onmouseover="dcc('<div style=margin-left:10;margin-top:10>这里是鼠标下出现的字</div>','','20')" onmouseout="nd()">这里是您的标题</a> | <a href="http://www.jzzy.com" target="main" onmouseover="dcc('<div style=margin-left:10;margin-top:10>这里是鼠标下出现的字</div>','','20')" onmouseout="nd()">这里是您的标题</a> |
<a href="http://www.jzzy.com" target="main" onmouseover="dcc('<div style=margin-left:10;margin-top:10>这里是鼠标下出现的字~</div>','','20')" onmouseout="nd()">这里是您的标题</a> | links |
</p>
snake - 2005-4-24 21:18:00

12· 状态栏显示时间


将下代码copy入你网页的<head>和</head>中的合适地方即可。



<SCRIPT LANGUAGE=JAVASCRIPT>
<!--
var timerID = null;
var timerRunning = false;
function stopclock (){
if(timerRunning)
clearTimeout(timerID);
timerRunning = false;
}
function showtime () {
var now = new Date();
var hours = now.getHours();
var minutes = now.getMinutes();
var seconds = now.getSeconds()
var timeValue = "" + ((hours >12) ? hours -12 :hours)
timeValue += ((minutes < 10) ? ":0" : ":") + minutes
timeValue += ((seconds < 10) ? ":0" : ":") + seconds
timeValue += (hours >= 12) ? " P.M." : " A.M."
window.status = timeValue;
timerID = setTimeout("showtime()",1000);
timerRunning = true;
}
function startclock () {
stopclock();
showtime();
}
-->
</SCRIPT>


将你Html文件的<body>改为如下:
<BODY onLoad="startclock()">

snake - 2005-4-24 21:19:00

13· Loading显示打开网页等待时间


你花了 2.8 秒打开这个页面

这个当然是假的了,一个随机数而已。但用来唬唬人还是可以的 :)

源文件如下:


<body id=body>

<div id=ld> <center> <h1>Loading...</h1> <table width=50%><tr><td align=left> <table id=lpc bgcolor=blue><tr><td> </td></tr></table> </td></tr></table> </center> </div>

<div style=display:none; id=page>你花了<q id=q></q> 秒打开这个页面
* 在这里填入你网页的正文
</div>

<script language=JavaScript> <!-- ini = new Date().getTime(); var pc = 0; load(); function load() { pc += 4; lpc.style.width = pc + "%"; time = setTimeout("load()",100); if (pc > 100) { clearTimeout(time); loaded() } } function loaded() { fim = new Date().getTime(); dif = fim - ini; ld.style.display = 'none'; body.style.backgroundColor = 'silver'; q.innerHTML = dif/1000; page.style.display = ''; } function Show() { if (txt.style.display == "none") { txt.style.display = "" } else { txt.style.display = "none" } } // event.onAnyDoubt = ""; --></script>
snake - 2005-4-24 21:19:00
14· 显示访问者停留时间
       
在你html文件的<head>与</head>之间加上:

<script LANGUAGE="JAVASCRIPT"> <!-- var ap_name = navigator.appName; var ap_vinfo = navigator.appVersion; var ap_ver = parseFloat(ap_vinfo.substring(0,ap_vinfo.indexOf('('))); var time_start = new Date(); var clock_start = time_start.getTime(); var dl_ok=false; function init () { if(ap_name=="Netscape" && ap_ver>=3.0) dl_ok=true; return true; } function get_time_spent () { var time_now = new Date(); return((time_now.getTime() - clock_start)/1000); } function show_secs () // show the time user spent on the side { var i_total_secs = Math.round(get_time_spent()); var i_secs_spent = i_total_secs % 60; var i_mins_spent = Math.round((i_total_secs-30)/60); var s_secs_spent = "" + ((i_secs_spent>9) ? i_secs_spent : "0" + i_secs_spent); var s_mins_spent = "" + ((i_mins_spent>9) ? i_mins_spent : "0" + i_mins_spent); document.time.time_spent.value = s_mins_spent + ":" + s_secs_spent; window.setTimeout('show_secs()',1000); } --> </script>

在你html文件的<body>改为:
<body onLoad="init(); window.setTimeout('show_secs()',1);">

在你html文件的<body>与</body>之间加上:
<form name="time" onSubmit="0"> <p>你的停留時间为:<br> <input type="text" name="time_spent" size="7" onFocus="this.blur()" BGCOLOR="#FFFFCC"> </form> -- ※ Origin: 欢迎您光临♂→@枫叶网@←♂ <[url]http://wxt520.home.bj001.net[/url]>
snake - 2005-4-24 21:20:00
15· 离开网站告别提示
      这是一个告别提示,适合于不太追求访问量的网站。因每次都出现这个提示其实也很让人烦。

在你的HTML文件的<body>改为以下代码:
<body onUnload= alert("再见,感谢你的访问!")>

snake - 2005-4-24 21:20:00
16· 进入网站欢迎提示
     
这是一个欢迎提示,适合于不太追求访问量的网站。因每次都出现这个提示其实也很让人烦。

  在你的HTML文件的<body>改为以下代码:
    <body onLoad= alert("你好,欢迎访问!")>
snake - 2005-4-24 21:20:00
玩透弹出窗口
    经常上网的朋友可能会到过这样一些网站,一进入首页立刻会弹出一个窗口,
或者按一个连接或按钮弹出,通常在这个窗口里会显示一些注意事项、版权信息、警告、

欢迎光顾之类的话或者作者想要特别提示的信息。其实制作这样的页面效果非常的容易,

只要往该页面的HTML里加入几段Javascript代码即可实现。下面俺就带您剖析它的奥秘。



【1、最基本的弹出窗口代码】



其实代码非常简单:



<SCRIPT LANGUAGE=javascript>
<!--
window.open ('page.html')
-->
</SCRIPT>
因为着是一段javascripts代码,所以它们应该放在<SCRIPT LANGUAGE=javascript>标签


和</script>之间。<!-- 和 -->是对一些版本低的浏览器起作用,在这些老浏览器中不会将


标签中的代码作为文本显示出来。要养成这个好习惯啊。
window.open ('page.html') 用于控制弹出新的窗口page.html,如果page.html不与主


窗口在同一路径下,前面应写明路径,绝对路径(http://)和相对路径(../)均可。用单引号


和双引号都可以,只是不要混用
这一段代码可以加入HTML的任意位置,<head>和</head>之间可以,<body>间</body>也可


以,越前越早执行,尤其是页面代码长,又想使页面早点弹出就尽量往前放。




【2、经过设置后的弹出窗口】



下面再说一说弹出窗口的设置。只要再往上面的代码中加一点东西就可以了。
我们来定制这个弹出的窗口的外观,尺寸大小,弹出的位置以适应该页面的具体情况。


<SCRIPT LANGUAGE=javascript>
<!--
window.open ('page.html', 'newwindow', 'height=100, width=400, top=0,

left=0, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=no,

status=no')
file://写成一行
-->
</SCRIPT>
参数解释:
<SCRIPT LANGUAGE=javascript> js脚本开始;
window.open 弹出新窗口的命令;
'page.html' 弹出窗口的文件名;
'newwindow' 弹出窗口的名字(不是文件名),非必须,可用空''代替;
height=100 窗口高度;
width=400 窗口宽度;
top=0 窗口距离屏幕上方的象素值;
left=0 窗口距离屏幕左侧的象素值;
toolbar=no 是否显示工具栏,yes为显示;
menubar,scrollbars 表示菜单栏和滚动栏。
resizable=no 是否允许改变窗口大小,yes为允许;
location=no 是否显示地址栏,yes为允许;
status=no 是否显示状态栏内的信息(通常是文件已经打开),yes为允许;
</SCRIPT> js脚本结束




【3、用函数控制弹出窗口】



下面是一个完整的代码。
<html>
<head>
<script LANGUAGE=JavaScript>
<!--
function openwin() { window.open (page.html, newwindow, height=100,


width=400, toolbar=
no, menubar=no, scrollbars=no, resizable=no, location=no, status=no)
file://写成一行
}
file://-->
</script>
</head>
<body onload=openwin()>
...任意的页面内容...
</body>
</html>
这里定义了一个函数openwin(),函数内容就是打开一个窗口。在调用它之前没有任何用途。
怎么调用呢?
方法一:<body onload=openwin()> 浏览器读页面时弹出窗口;
方法二:<body onunload=openwin()> 浏览器离开页面时弹出窗口;
方法三:用一个连接调用:
<a href=# onclick=openwin()>打开一个窗口</a>
注意:使用的“#”是虚连接。
方法四:用一个按钮调用:
<input type=button onclick=openwin() value=打开窗口>



【4、同时弹出2个窗口】



对源代码稍微改动一下:
<script LANGUAGE=JavaScript>
<!--
function openwin()
{ window.open (page.html, newwindow, height=100, width=100,


top=0,left=0,toolbar=no,


menubar=no, scrollbars=no, resizable=no, location=no, status=no)
file://写成一行
window.open (page2.html, newwindow2, height=100, width=100, top=100,


left=100,toolbar=no, menubar=no, scrollbars=no, resizable=no,


location=no, status=no)
file://写成一行
}
file://-->
</script>
为避免弹出的2个窗口覆盖,用top和left控制一下弹出的位置不要相互覆盖即可。


最后用上面说过的四种方法调用即可。



注意:2个窗口的name(newwindows和newwindow2)不要相同,或者干脆全部为空。


OK?



【5、主窗口打开文件1.htm,同时弹出小窗口page.html】



如下代码加入主窗口<head>区:
<script language=javascript>
<!--
function openwin()
{window.open(page.html,,width=200,height=200)
}
file://-->
</script>
加入<body>区:
<a href=1.htm onclick=openwin()>open</a>即可。



【6、弹出的窗口之定时关闭控制】



下面我们再对弹出的窗口进行一些控制,效果就更好了。如果我们再将一小段代


码加入弹出的页面(注意是加入到page.html的HTML中,可不是主页面中,否则...)


,让它10秒后自动关闭是不是更酷了?



首先,将如下代码加入page.html文件的<head>区:
<script language=JavaScript>
function closeit()
{setTimeout(self.close(),10000)
file://毫秒}
</script>
然后,再用<body onload=closeit()> 这一句话代替page.html中原有的<BODY>


这一句就可以了。(这一句话千万不要忘记写啊!这一句的作用是调用关闭窗口的代码,


10秒钟后就自行关闭该窗口。)



【7、在弹出窗口中加上一个关闭按钮】



<FORM>
<INPUT TYPE='BUTTON' VALUE='关闭' onClick='window.close()'>
</FORM>
呵呵,现在更加完美了!



【8、内包含的弹出窗口-一个页面两个窗口】



上面的例子都包含两个窗口,一个是主窗口,另一个是弹出的小窗口。



通过下面的例子,你可以在一个页面内完成上面的效果。
<html>
<head>
<SCRIPT LANGUAGE=JavaScript>
function openwin()
{OpenWindow=window.open(, newwin, height=250, width=250,toolbar=no


,scrollbars=+scroll+,menubar=no);
file://写成一行
OpenWindow.document.write(<TITLE>例子</TITLE>)
OpenWindow.document.write(<BODY BGCOLOR=#ffffff>)
OpenWindow.document.write(<h1>Hello!</h1>)
OpenWindow.document.write(New window opened!)
OpenWindow.document.write(</BODY>)
OpenWindow.document.write(</HTML>)
OpenWindow.document.close()}
</SCRIPT>
</head>
<body>
<a href=# onclick=openwin()>打开一个窗口</a>
<input type=button onclick=openwin() value=打开窗口>
</body>
</html>
看看 OpenWindow.document.write()里面的代码不就是标准的HTML吗?


只要按照格式写更多的行即可。千万注意多一个标签或少一个标签就会出现错误。


记得用OpenWindow.document.close()结束啊。



【9、终极应用--弹出的窗口之Cookie控制】



回想一下,上面的弹出窗口虽然酷,但是有一点小毛病(沉浸在喜悦之中,


一定没有发现吧?)比如你将上面的脚本放在一个需要频繁经过的页面里(例如首页),


那么每次刷新这个页面,窗口都会弹出一次,是不是非常烦人?:-(


有解决的办法吗?Yes! ;-) Follow me.



我们使用cookie来控制一下就可以了。



首先,将如下代码加入主页面HTML的<HEAD>区:
<script>
function openwin()
{window.open(page.html,,width=200,height=200)}
function get_cookie(Name)
{var search = Name + =
var returnvalue = ;
if (document.cookie.length > 0) {
offset = document.cookie.indexOf(search)
if (offset != -1) {
offset += search.length
end = document.cookie.indexOf(;, offset);
if (end == -1)
end = document.cookie.length;
returnvalue=unescape(document.cookie.substring(offset,end))
}
}
return returnvalue;
}
function loadpopup(){
if (get_cookie('popped')==''){
openwin()
document.cookie=popped=yes
}
}
</script>
然后,用<body onload=loadpopup()>(注意不是openwin而是loadpop啊!)


替换主页面中原有的<BODY>这一句即可。你可以试着刷新一下这个页面或重新进


入该页面,窗口再也不会弹出了。真正的Pop-Only-Once!



写到这里弹出窗口的制作和应用技巧基本上算是完成了,俺也累坏了,一口气说


了这么多,希望对正在制作网页的朋友有所帮助俺就非常欣慰了。



需要注意的是,JS脚本中的的大小写最好前后保持一致

1