目录
一、向页面添加广告层
- getElementById( )方法获得层对象
- pixelTop属性获取层距页面顶部的距离
- document.body.scrollTop获取滚动条距顶部的距离
- 设置层的z-index属性,数值大的靠前显示
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
<TITLE>广告</TITLE>
<SCRIPT language="javascript">
var initTop=0;
function init( )
{
initTop=document.getElementById("advLayer1").style.pixelTop;
}
function move( )
{
document.getElementById("advLayer1").style.pixelTop=initTop+document.body.scrollTop ;
document.getElementById("advLayer2").style.pixelTop=initTop+document.body.scrollTop ;
}
window.onscroll=move ; //窗口的滚动事件,当页面滚动时调用move( )函数
</SCRIPT>
</HEAD>
<BODY onLoad="init()">
<DIV id="advLayer1" style="position:absolute; left:-7px; top:79px; width:139px; height:253px; z-index:1;">
<A href="#"><IMG src="images/left.jpg" width="144" height="253" border="0"></A>
</DIV>
<DIV id="advLayer2" style="position:absolute; left:885px; top:79px; width:129px; height:257px; z-index:1;">
<A href="#"><IMG src="images/right.jpg" width="130" height="256" border="0"></A>
</DIV>
</BODY>
</HTML>
二、getElementByName( )方法获得表单元素
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
<TITLE>getElementByName</TITLE>
<SCRIPT language="javascript">
function checkAll(checked)
{
var allCheckBoxs=document.getElementsByName("isBuy") ;
for (var i=0;i<allCheckBoxs.length ;i++)
{
if(allCheckBoxs[i].type=="checkbox"){ //可能有重名的其他类型元素,如图片、控件等,所以要判断类型
allCheckBoxs[i].checked=checked;
}
}
}
</SCRIPT>
</HEAD>
<BODY>
<FORM action="" name="buyForm" method="post">
<TABLE width="984" border="0">
<TR>
<TD colspan="2"></TD>
</TR>
<TR>
<TD width="176" align="center"><FONT size="-1">全选/取消</FONT><BR>
<INPUT name="selectall" type="checkbox" id="selectall" onClick="checkAll(this.checked)"></TD>
<TD width="824" align="center"></TD>
</TR>
<TR>
<TD height="113" align="center"><INPUT name="isBuy" type="checkbox" id="isBuy" value="sanguo"></TD>
<TD></TD>
</TR>
<TR>
<TD colspan="2" align="center"><HR noshade="noshade" style="border:1px #CCCCCC dashed " /></TD>
</TR>
<TR>
<TD align="center"><INPUT name="isBuy" type="checkbox" id="isBuy" value="paozhu"></TD>
<TD></TD>
</TR>
<TR>
<TD colspan="2" align="center"><HR noshade="noshade" style="border:1px #CCCCCC dashed " /></TD>
</TR>
<TR>
<TD align="center"><INPUT name="isBuy" type="checkbox" id="isBuy" value="paozhu"></TD>
<TD></TD>
</TR>
<TR>
<TD colspan="2" align="center"><HR noshade="noshade" style="border:1px #CCCCCC dashed " /></TD>
</TR>
<TR>
<TD align="center"><INPUT name="isBuy" type="checkbox" id="isBuy" value="jingwu"></TD>
<TD></TD>
</TR>
<TR>
<TD colspan="2" align="center"><HR noshade="noshade" style="border:1px #CCCCCC dashed " /></TD>
</TR>
<TR>
<TD colspan="2" align="center"></TD>
</TR>
</TABLE>
</FORM>
</BODY>
</HTML>
三、style的display属性实现层的隐藏
可关闭的悬浮广告
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
<TITLE>浮动广告窗口</TITLE>
<SCRIPT language="javascript">
var advInitTop=0;
var closeInitTop=0;
function inix( )
{
advInitTop=document.getElementById("advLayer").style.pixelTop;
closeInitTop=document.getElementById("closeLayer").style.pixelTop;
}
function move( )
{
document.getElementById("advLayer").style.pixelTop=advInitTop+document.body.scrollTop ;
document.getElementById("closeLayer").style.pixelTop=closeInitTop+document.body.scrollTop ;
}
function closeMe( )
{
document.getElementById("closeLayer").style.display="none";
document.getElementById("advLayer").style.display="none";
}
window.onscroll=move ; //窗口的滚动事件,当页面滚动时调用move( )函数
</SCRIPT>
<STYLE type="text/css">
<!--
body {
margin-top: 0px;
}
-->
</STYLE></HEAD>
<BODY onLoad="inix( )" >
<DIV id="closeLayer" onClick="closeMe( )" style="position:absolute; right:40px; top:80px; width:54px; height:19px;z-index:2;">
<FONT color="#0000FF" face="黑体">关闭</FONT>
</DIV>
<DIV id="advLayer" style="position:absolute; right:30px; top:100px; width:86px; height:81px; z-index:1">
<A href="http://www.taobao.com">
<IMG src="images/float_advclose1.gif" width="85" height="80" border="0"></A>
</DIV>
</BODY>
</HTML>
</div>
四、offsetWidth与offsetHeight
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
<TITLE>无标题文档</TITLE>
<script>
var x = 50,y = 60; //浮动广告初始位置
var xin = true, yin = true; //xin为真向右运动,否则向左,yin为真向下 运动,否则向上运动
var step = 1; //移动的距离
var delay = 10; //移动的时间间隔
function floatAD() {
var L=T=0; //L左边界,T上边界
var R= document.body.offsetWidth-document.getElementById("fly").offsetWidth; //层移动的右边界
var B = document.body.offsetHeight-document.getElementById("fly").offsetHeight; //层移动的下边界
document.getElementById("fly").style.left = x; //层移动后的左边界
document.getElementById("fly").style.top = y; //曾移动后上边界
x = x + step*(xin?1:-1); //判断水平方向
if (x < L) { xin = true; x = L;} //到达边界后的处理
if (x > R){ xin = false; x = R;}
y = y + step*(yin?1:-1);
if (y < T) { yin = true; y = T;}
if (y > B) { yin = false; y = B;}
setTimeout("floatAD()", delay) //隔多长时间调用一次
}
</script>
</HEAD>
<BODY onLoad="floatAD()">
<DIV id="fly" style="position:absolute">
<A href= target="_blank">
<IMG src="images/fish.gif" border="0">
</A></DIV>
</BODY>
</HTML>
五、窗口滚动事件Move()
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
<TITLE>可关闭的浮动广告</TITLE>
<SCRIPT language="javascript">
var picTop = 0;
var advTop = 0;
function init( )
{
picTop=document.getElementById("advLayer").style.pixelTop;
advTop=document.getElementById("closeAdv").style.pixelTop;
}
function move( )
{
document.getElementById("advLayer").style.pixelTop=picTop+document.body.scrollTop;
document.getElementById("closeAdv").style.pixelTop=advTop+document.body.scrollTop;
}
function closeAdv(){
document.getElementById("advLayer").style.display="none";
document.getElementById("closeAdv").style.display="none";
}
window.onscroll=move ; //窗口的滚动事件,当页面滚动时调用move( )函数
</SCRIPT>
</HEAD>
<BODY onLoad="init()">
<IMG src="images/top.jpg"><IMG src="images/content1.jpg">
<IMG src="images/content2.jpg"><IMG src="images/foot.jpg">
<DIV id="advLayer" style="position:absolute; left:16px; top:80px; width:302px; height:171px; z-index:1;">
<A href="#"><IMG src="images/lady_0007.jpg" width="301" height="171" border="0"></A>
</DIV>
<DIV id="closeAdv" onClick="closeAdv()" style="position:absolute; left:214px; top:230px; width:27px; height:19px;z-index:2; cursor:hand">
<IMG src="images/close.gif" width="100" height="14">
</DIV>
</BODY>
</HTML>
六、弹来弹去的广告
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
<TITLE>广告</TITLE>
<SCRIPT>
var x = 50,y = 60; //浮动广告初始位置
var xin = true, yin = true; //xin为真向右运动,否则向左,yin为真向下 运动,否则向上运动
var step = 1; //移动的距离
var delay = 10; //移动的时间间隔
function floatAD() {
var L=T=0; //L左边界,T上边界
var R= document.body.offsetWidth-document.getElementById("fly").offsetWidth; //层移动的右边界
var B = document.body.offsetHeight-document.getElementById("fly").offsetHeight; //层移动的下边界
document.getElementById("fly").style.left = x; //层移动后的左边界
document.getElementById("fly").style.top = y; //曾移动后上边界
x = x + step*(xin?1:-1); //判断水平方向
if (x < L) { xin = true; x = L;} //到达边界后的处理
if (x > R){ xin = false; x = R;}
y = y + step*(yin?1:-1);
if (y < T) { yin = true; y = T;}
if (y > B) { yin = false; y = B;}
setTimeout("floatAD()", delay) //隔多长时间调用一次
}
</SCRIPT>
</HEAD>
<BODY onLoad="floatAD()">
<IMG src="images/top.jpg"><IMG src="images/content1.jpg"><IMG src="images/content2.jpg"><IMG src="images/foot.jpg">
<DIV id="fly" style="position:absolute; left:16px; top:80px; width:265px; height:135px; z-index:1;"><A href="#"><IMG src="images/lady_0007.jpg" width="264" height="134" border="0"></A></DIV>
</BODY>
</HTML>
七、全选特效
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
<TITLE>全选特效</TITLE>
<SCRIPT type="text/javascript">
function selectAll()
{
var allCheckBoxs=document.getElementsByName("coffee") ;//获得checkbox对象的集合
var desc = document.getElementById("btn").value; //获得按钮对象
if(desc=="全喜欢") {
document.getElementById("btn").value="都不喜欢";
for (var i=0;i<allCheckBoxs.length ;i++) //循环checkbox对象集合,设置每一个checkbox的状态
{
allCheckBoxs[i].checked=true ;
}
}else{
document.getElementById("btn").value="全喜欢";
for (var i=0;i<allCheckBoxs.length ;i++)
{
allCheckBoxs[i].checked=false ;
}
}
}
</SCRIPT>
</HEAD>
<BODY>
<P>你喜欢喝哪种类型咖啡</P>
<FORM>
<BR>
<INPUT type="checkbox" name="coffee" value="cream">蓝山咖啡<BR />
<INPUT type="checkbox" name="coffee" value="sugar">摩卡<BR />
<INPUT type="checkbox" name="coffee" value="sugar">拿铁<BR />
<INPUT type="checkbox" name="coffee" value="sugar">卡布其诺<BR />
<INPUT type="checkbox" name="coffee" value="sugar">爱尔兰咖啡<BR />
<INPUT id="btn" type="button" onClick="selectAll()" value="全喜欢">
</FORM>
</BODY>
</HTML>
八、简易轮播图
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
<TITLE>多幅图片切换的特效</TITLE>
<SCRIPT type="text/javascript">
var count =1;
function init(){
for(var i=1;i<5;i++){
if(count==i){
document.getElementById("pic"+i).style.display="block";
}else{
document.getElementById("pic"+i).style.display="none";
}
}
count++;
if(count==5){
count=1;
}
setTimeout("init()",3000);
}
</SCRIPT>
</HEAD>
<BODY onLoad="init()">
<DIV id="pic1"><IMG src="images/pic1.jpg" width="400" height="300"></DIV>
<DIV id="pic2" style="display:none"><IMG src="images/pic2.jpg" width="400" height="300"></DIV>
<DIV id="pic3" style="display:none"><IMG src="images/pic3.jpg" width="400" height="300"></DIV>
<DIV id="pic4" style="display:none"><IMG src="images/pic4.jpg" width="400" height="300"></DIV>
</BODY>
</HTML>
九、鼠标移过改变颜色
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
<TITLE>通过document对象相关属性动态改变背景色</TITLE>
<SCRIPT language="JavaScript">
function change(color)
{
document.bgColor=color ;
}
</SCRIPT>
</HEAD>
<BODY>
<H2> 移过来我变色给你看看!</H2>
<FONT size=4><SPAN onMouseOver="change('red')">变红色</SPAN>|<SPAN onMouseOver="change('blue')">变蓝色</SPAN>|<SPAN onMouseOver="change('yellow')">变黄色</SPAN></FONT>
</BODY>
</HTML>
十、超连接特效
<div id=tt style="width:122px;height:20px;background-color:#FF9966;border:1px solid black;display:none;position:absolute;"> 打造精品特效站 </div>
<a href=http://www.vv.net target="_blank"
onmouseover="tt.style.display='';
tt.style.pixelTop=event.y;
tt.style.pixelLeft=event.x"
onmouseout="tt.style.display='none'">
网页特效</a>
十一、精确定位
<!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>随滚动条移动的层 - 51windows.Net</TITLE>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html" charset="gb2312">
<META NAME="Author" CONTENT="haiwa">
<META NAME="homepage" CONTENT="www.51windows.net">
</HEAD>
<style>
<!--
.div{
position: absolute;
border: 2px solid red;
background-color: #EFEFEF;
line-height:90px;
font-size:12px;
z-index:1000;
left: 150px;
}
-->
</style>
<BODY>
<div id="Javascript.Div1" class="div" style="width: 240px; height:90px" align="center">正中...</div>
<SCRIPT LANGUAGE="JavaScript">
function sc1(){
document.getElementById("Javascript.Div1").style.top=(document.documentElement.scrollTop+(document.documentElement.clientHeight-document.getElementById("Javascript.Div1").offsetHeight)/2)+"px";
document.getElementById("Javascript.Div1").style.left=(document.documentElement.scrollLeft+(document.documentElement.clientWidth-document.getElementById("Javascript.Div1").offsetWidth)/2)+"px";
}
</SCRIPT>
<div id="Javascript.Div2" class="div" style="width: 240px; height:90px" align="center">左上...</div>
<SCRIPT LANGUAGE="JavaScript">
function sc2(){
document.getElementById("Javascript.Div2").style.top=(document.documentElement.scrollTop)+"px";
document.getElementById("Javascript.Div2").style.left=(document.documentElement.scrollLeft)+"px";
}
</SCRIPT>
<div id="Javascript.Div3" class="div" style="width: 240px; height:90px" align="center">左下...</div>
<SCRIPT LANGUAGE="JavaScript">
function sc3(){
document.getElementById("Javascript.Div3").style.top=(document.documentElement.scrollTop+document.documentElement.clientHeight-document.getElementById("Javascript.Div3").offsetHeight)+"px";
document.getElementById("Javascript.Div3").style.left=(document.documentElement.scrollLeft)+"px";
}
</SCRIPT>
<div id="Javascript.Div4" class="div" style="width: 240px; height:90px" align="center">右上...</div>
<SCRIPT LANGUAGE="JavaScript">
function sc4(){
document.getElementById("Javascript.Div4").style.top=(document.documentElement.scrollTop)+"px";
document.getElementById("Javascript.Div4").style.left=(document.documentElement.scrollLeft+document.documentElement.clientWidth-document.getElementById("Javascript.Div4").offsetWidth)+"px";
}
</SCRIPT>
<div id="Javascript.Div5" class="div" style="width: 240px; height:90px" align="center">右下...</div>
<SCRIPT LANGUAGE="JavaScript">
function sc5(){
document.getElementById("Javascript.Div5").style.top=(document.documentElement.scrollTop+document.documentElement.clientHeight-document.getElementById("Javascript.Div5").offsetHeight)+"px";
document.getElementById("Javascript.Div5").style.left=(document.documentElement.scrollLeft+document.documentElement.clientWidth-document.getElementById("Javascript.Div5").offsetWidth)+"px";
}
</SCRIPT>
<SCRIPT LANGUAGE="JavaScript">
<!--
function scall(){
sc1();sc2();sc3();sc4();sc5();
}
window.onscroll=scall;
window.onresize=scall;
window.onload=scall;
//-->
</SCRIPT>
<div style="position: absolute; top: 0px; left: 0px; width: 10000px; height: 4000px;"></div>
</BODY>
</HTML>
十二、document.all的用法
<!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>Document.All Example #2</title>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
</head>
<body>
<!-- Works in Internet Explorer and compatible -->
<h1 id="heading1" align="center" style="font-size: larger;">DHTML Fun!!!</h1>
<form name="testform" id="testform" action="#" method="get">
<br /><br />
<input type="button" value="Align Left"
onclick="document.all['heading1'].align='left';" />
<input type="button" value="Align Center"
onclick="document.all['heading1'].align='center';" />
<input type="button" value="Align Right"
onclick="document.all['heading1'].align='right';" />
<br /><br />
<input type="button" value="Bigger"
onclick="document.all['heading1'].style.fontSize='xx-large';" />
<input type="button" value="Smaller"
onclick="document.all['heading1'].style.fontSize='xx-small';" />
<br /><br />
<input type="button" value="Red"
onclick="document.all['heading1'].style.color='red';" />
<input type="button" value="Blue"
onclick="document.all['heading1'].style.color='blue';" />
<input type="button" value="Black"
onclick="document.all['heading1'].style.color='black';" />
<br /><br />
<input type="text" name="userText" id="userText" size="30" />
<input type="button" value="Change Text"
onclick="document.all['heading1'].innerText=document.testform.userText.value;" />
</form>
</body>
</html>
十二、getElementsByTagName
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>Byname,tag</title>
<style type="text/css">
<!--
#docid1,#docid2{
margin:10px;
height:400px;
width:400px;
background-color:#999;}
-->
</style>
</head>
<body>
<div name="docname" id="docid1" onClick="bgcolor()"></div>
<div name="docname" id="docid2" onClick="bgcolor()"></div>
</body>
</html>
<script language="javascript" type="text/javascript">
<!--
function bgcolor(){
var docnObj=document.getElementsByTagName("div");
docnObj[0].style.backgroundColor = "red";
docnObj[1].style.backgroundColor = "blue";
}
-->
</script>
十三、访问H1的getElemtById
<html>
<head>
<script type="text/javascript">
function getValue()
{
var x=document.getElementById("myHeader")
alert(x.innerHTML)
}
</script>
</head>
<body>
<h1 id="myHeader" onclick="getValue()">This is a header</h1>
<p>Click on the header to alert its value</p>
</body>
</html>
十四、获取当前坐标值的另一种方法
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
<TITLE>无标题文档</TITLE>
<STYLE type="text/css">
<!--
body {
background-image: url(images/game.jpg);
background-repeat: repeat-y;
}
#man {
position:absolute;
left:526px;
top:303px;
width:93px;
height:121px;
z-index:1;
}
-->
</STYLE>
<SCRIPT language="javascript" type="text/javascript">
function move( )
{
//top属性返回的是类似23px的值,而非简单的数字,parseInt(...)的值,才相当于pixelTop
alert(parseInt(document.getElementById("man").currentStyle.top));
if (event.keyCode==38)
document.getElementById("man").currentStyle.pixelTop=document.getElementById("man").style.pixelTop-5;
if (event.keyCode==40)
document.getElementById("man").style.pixelTop=document.getElementById("man").style.pixelTop+5;
if (event.keyCode==37)
document.getElementById("man").style.pixelLeft=document.getElementById("man").style.pixelLeft-5;
if (event.keyCode==39)
document.getElementById("man").style.pixelLeft=document.getElementById("man").style.pixelLeft+5;
}
document.onkeydown= move ;
</SCRIPT>
</HEAD>
<BODY>
<DIV id="man"><IMG src="images/man.gif" width="82" height="152"></DIV>
</BODY>
</HTML>