现在很多网站广告做的如火如荼,现在我就来介绍一下常见的对联浮动广告效果的代码使用方法,介绍的这种效果,在1024*768分辨率下正常显示,在800*600的分辨率下可以自动隐藏,以免遮住页面影响访问者浏览内容,下面就是实现效果所需代码:
var delta=0.015
var collection;
function floaters() {
this.items = [];
this.additem = function(id,x,y,content)
{
document.write('<div id='+id+' style="z-index: 0; position: absolute; width:80px; height:60px;left:'+(typeof(x)=='string'?eval(x):x)+';top:'+(typeof(y)=='string'?eval(y):y)+'">'+content+'</div>');
var newitem = {};
newitem.object = document.getelementbyid(id);
newitem.x = x;
newitem.y = y; o34$t8!=L,3!h3G%v [ 本 资 料 来 源 于 贵 州 学 习 网 网页设计Javascript教程 http://Www.gzU521.com ] o34$t8!=L,3!h3G%v
this.items[this.items.length] = newitem;
}
this.play = function()
{
collection = this.items
setinterval('play()',10);
}
}
function play()
{
if(screen.width<=800)
{
for(var i=0;i<collection.length;i++)
{
collection[i].object.style.display = 'none';
}
return;
}
for(var i=0;i<collection.length;i++)
{
var followobj = collection[i].object;
var followobj_x = (typeof(collection[i].x)=='string'?eval(collection[i].x):collection[i].x);
var followobj_y = (typeof(collection[i].y)=='string'?eval(collection[i].y):collection[i].y);
if(followobj.offsetleft!=(document.body.scrollleft+followobj_x)) {
var dx=(document.body.scrollleft+followobj_x-followobj.offsetleft)*delta;
dx=(dx>0?1:-1)*math.ceil(math.abs(dx));
followobj.style.left=followobj.offsetleft+dx;
}
if(followobj.offsettop!=(document.body.scrolltop+followobj_y)) {
var dy=(document.body.scrolltop+followobj_y-followobj.offsettop)*delta;
dy=(dy>0?1:-1)*math.ceil(math.abs(dy));
followobj.style.top=followobj.offsettop+dy;
}
followobj.style.display = '';
}
}
var thefloaters = new floaters();
thefloaters.additem('followdiv1','document.body.clientwidth-100',0,'</a><br><a href=广告链接地址 target=_blank><img src=广告图片地址 width=100 height=400 border=0></a>');
thefloaters.additem('followdiv2',0,0,'<br><a href=广告链接地址 target=_blank><img src=广告图片地址 width=100 height=400 border=0></a>');
thefloaters.play();
把上面的代码另存为一个js文件,然后在想实现此效果的页面用 调用即可!注意修改广告图片地址和连接地址!
鼠标感应]
与前面一个代码不同的是,当鼠标移动到广告图片上是可以感应显示另外设置好的广告大图效果,下面就是实现效果所需代码:
function bigshow(){
document.all.div_250.style.visibility = 'visible';
document.all.div_80.style.visibility = 'hidden';
}
function bighide(){
document.all.div_80.style.visibility = 'visible';
document.all.div_250.style.visibility = 'hidden';
}
var ad_80= new array(1);
var ad_250= new array(1);
ad_80[0]="<a href=http://www.dfeng.net target=_blank><img src=/skin/adv43/ad/ad_ad.gif border=0></a>";
ad_250[0]="<a href=http://www.dfeng.net target=_blank><img src=/skin/adv43/ad/ad_ad2.gif border=0></a>";
var imgheight;
var fubioleft;
window.screen.width>800 ? fubioleft=15:fubioleft=15
document.write('<div id=floater_left style="z-index: 25; left:'+fubioleft+'px; width: 28px;position: absolute; top: 42px; height: 22px">');
ad_now = new date();
ad_id= ad_now.getseconds() %1
var adhead1="<div id=div_80 style='position:absolute; width:95px; height:62px; z-index:12' onmouseover=bigshow();>";
var adhead2="</div><div id=div_250 style='position:absolute; visibility: hidden; z-index:13;width: 80; height: 60' onmouseout=bighide();>";
//var adhead1="<div id=div_80 style='position:absolute; width:95px; height:62px; z-index:20' onmouseout='//mm_showhidelayers(\"div_250\",\"\",\"hide\")' onmouseover='mm_showhidelayers(\"div_250\",\"\",\"show\")'>";
//var adhead2="</div><div id=div_250 style='position:absolute; z-index:21;visibility: hidden; width: 80; height: 60' onmouseover='mm_showhidelayers(\"div_250\",\"\",\"show\")' onmouseout='mm_showhidelayers(\"div_250\",\"\",\"hide\")'>";
document.write(adhead1+ad_80[ad_id]+adhead2+ad_250[ad_id]+"</div>");
document.write ("</div>");
self.onerror=null;
currentx = currenty = 0;
whichit = null;
lastscrollx = 0; lastscrolly = 0;
ns = (document.layers) ? 1 : 0;
ie = (document.all) ? 1: 0;
function heartbeat() {
if(ie) {
diffy = document.body.scrolltop;
diffx = document.body.scrollleft; }
if(ns) {
diffy = self.pageyoffset; diffx = self.pagexoffset; }
if(diffy != lastscrolly) {
percent = .5 * (diffy - lastscrolly);
if(percent > 0) percent = math.ceil(percent);
else percent = math.floor(percent);
if(ie) document.all.floater_left.style.pixeltop += percent;
if(ns) document.floater_left.top += percent;
lastscrolly = lastscrolly + percent;
}
if(diffx != lastscrollx) {
percent = .5 * (diffx - lastscrollx);
if(percent > 0) percent = math.ceil(percent);
else percent = math.floor(percent);
if(ie) document.all.floater_left.style.pixelleft += percent;
if(ns) document.floater_left.left += percent;
lastscrollx = lastscrollx + percent;
}
}
if(ns || ie) action = window.setinterval("heartbeat()",1);var ad_80= new array(1);
var ad_250= new array(1);
ad_80[0]="<a href=http://www.dfeng.net target=_blank><img src=/skin/adv43/ad/ad_ad.jpg border=0></a>";
ad_250[0]="<a href=http://www.dfeng.net target=_blank><img src=/skin/adv43/ad/ad_ad.jpg border=0></a>";pHRSliRM,==}r=$(K#[ 此文转贴于我的学习网网页设计JavaScript教程 http://www.Gzu521.com]pHRSliRM,==}r=$(K#
var imgheight;
var fubioleft;
window.screen.width>800 ? fubioleft=15:fubioleft=15
document.write('<div id=floater_right style="z-index: 25; left:'+fubioleft+'px; width: 28px;position: absolute; top: 42px; height: 22px">');
ad_now = new date();
ad_id= ad_now.getseconds() %1
function myload()
{
if (navigator.appname == "netscape")
{
document.div_right_80.pagex=+window.innerwidth-130;
document.div_right_250.pagex=+window.innerwidth-300;
mymove();
}
else
{
div_right_80.style.left=document.body.offsetwidth-130;
div_right_250.style.left=document.body.offsetwidth-300;
mymove();
}
}
function mymove()
{
if(document.ns)
{
document.div_right_80.left=pagexoffset+window.innerwidth-130;
document.div_right_250.left=pagexoffset+window.innerwidth-300;
settimeout("mymove();",20)
}
else
{
div_right_80.style.left=document.body.scrollleft+document.body.offsetwidth-145;
div_right_250.style.left=document.body.scrollleft+document.body.offsetwidth-300;
settimeout("mymove();",20)
}
}
var adhead1="<div id=div_right_80 style='position:absolute; width:95px; height:60px; z-index:12' onmouseover=bigshow_right();>";
var adhead2="</div><div id=div_right_250 style='position:absolute; visibility: hidden; z-index:13;width: 250; height: 250' onmouseout=bighide_right();><div align=right>";
document.write(adhead1+ad_80[ad_id]+adhead2+ad_250[ad_id]+"</div></div>");
myload()
document.write ("</div>");
self.onerror=null;
currentx_right = currenty_right = 0;
whichit_right = null;
lastscrollx_right = 0; lastscrolly_right = 0;
ns = (document.layers) ? 1 : 0;
ie = (document.all) ? 1: 0;
function heartbeat_right() {
if(ie) {
diffy_right = document.body.scrolltop;
diffx_right = document.body.scrollleft; }
if(ns) {
diffy_right = self.pageyoffset; diffx_right = self.pagexoffset; }
if(diffy_right != lastscrolly_right) {
percent_right = .5 * (diffy_right - lastscrolly_right);
if(percent_right > 0) percent_right = math.ceil(percent_right);
else percent_right = math.floor(percent_right);
if(ie) document.all.floater_right.style.pixeltop += percent_right;
if(ns) document.floater_right.top += percent_right;
lastscrolly_right = lastscrolly_right + percent_right;
}
if(diffx_right != lastscrollx_right) {
percent_right = .5 * (diffx_right - lastscrollx_right);
if(percent_right > 0) percent_right = math.ceil(percent_right);
else percent_right = math.floor(percent_right);
if(ie) document.all.floater_right.style.pixelleft += percent_right;
if(ns) document.floater_right.left += percent_right;
lastscrollx_right = lastscrollx_right + percent_right;
}
}
if(ns || ie) action = window.setinterval("heartbeat_right()",1);
function bigshow_right(){
document.all.div_right_250.style.visibility = 'visible';
document.all.div_right_80.style.visibility = 'hidden';
}
function bighide_right(){
document.all.div_right_80.style.visibility = 'visible';
document.all.div_right_250.style.visibility = 'hidden';
}document.write('');
document.write('');
document.write('');
把上面的代码另存为一个js文件,然后在想实现此效果的页面用
<script type="text/javascript" language="javascript1.2" src="*.js"></script>
调用即可,*代表你另存的文件名!注意修改广告图片地址和连接地址!
与前面两个代码不同的是,广告图下方增加了一个图片按纽,允许访客点击关闭广告图片,下面文本框中就是实现效果所需代码:
var delta=0.015;
var collection;
var closeb=false;
function floaters() {
this.items = [];
this.additem = function(id,x,y,content)
{
document.write('<div id='+id+' style="z-index: 10; position: absolute; width:80px; height:60px;left:'+(typeof(x)=='string'?eval(x):x)+';top:'+(typeof(y)=='string'?eval(y):y)+'">'+content+'</div>');
var newitem = {};
newitem.object = document.getelementbyid(id);
newitem.x = x;
newitem.y = y;
this.items[this.items.length] = newitem;
}
this.play = function()
{
collection = this.items
setinterval('play()',30);
}
}
function play()
{
if(screen.width<=800 || closeb)
{
for(var i=0;i<collection.length;i++)
{
collection[i].object.style.display = 'none';
}
return;
}
for(var i=0;i<collection.length;i++)
{
var followobj = collection[i].object;
var followobj_x = (typeof(collection[i].x)=='string'?eval(collection[i].x):collection[i].x);
var followobj_y = (typeof(collection[i].y)=='string'?eval(collection[i].y):collection[i].y);
if(followobj.offsetleft!=(document.body.scrollleft+followobj_x)) {
var dx=(document.body.scrollleft+followobj_x-followobj.offsetleft)*delta;
dx=(dx>0?1:-1)*math.ceil(math.abs(dx));
followobj.style.left=followobj.offsetleft+dx;
}
if(followobj.offsettop!=(document.body.scrolltop+followobj_y)) {
var dy=(document.body.scrolltop+followobj_y-followobj.offsettop)*delta;
dy=(dy>0?1:-1)*math.ceil(math.abs(dy));
followobj.style.top=followobj.offsettop+dy;
}
followobj.style.display = '';
}
}
function closebanner()
{
closeb=true;
return;
}
var thefloaters = new floaters();
//
thefloaters.additem('followdiv1','document.body.clientwidth-100',0,'<a onclick="closebanner();" href=http://www.dfeng.net target=_blank><img src=ad/doublead/right.gif width=100 height=554 border=0></a><br><br><img src=ad/doublead/close.gif onclick="closebanner();">');
thefloaters.additem('followdiv2',0,0,'<a onclick="closebanner();" href=http://www.dfeng.net target=_blank><img src=ad/doublead/ad_ad.gif width=100 height=400 border=0 ></a><br><br><img src=ad/doublead/close.gif onclick="closebanner();">');
thefloaters.play();
把上面的代码另存为一个js文件,然后在想实现此效果的页面用 调用即可,*代表你另存的文件名!注意修改广告图片地址和连接地址!
浮动对联广告---之左侧代码
如果您想只有一侧显示的话,下面是实现左侧效果所需代码:
var ad_float_left_src ="图片地址";
var ad_float_left_url ="地址";
var ad_float_left_type = "";
document.ns = navigator.appname == "microsoft internet explorer"
var imgheight_close
var imgleft
window.screen.width>800 ? imgheight_close=120:imgheight_close=120
window.screen.width>800 ? imgleft=8:imgleft=122
function myload()
{
myleft.style.top=document.body.scrolltop+document.body.offsetheigh
t-imgheight_close;
myleft.style.left=imgleft;
leftmove();
}
function leftmove()
{
myleft.style.top=document.body.scrolltop+document.body.offsetheigh
t-imgheight_close;
myleft.style.left=imgleft;
settimeout("leftmove();",50)
}
function mm_reloadpage(init) { //reloads the window if nav4
resized
if (init==true) with (navigator) {if ((appname=="netscape")&&
(parseint(appversion)==4)) {
document.mm_pgw=innerwidth; document.mm_pgh=innerheight;
onresize=mm_reloadpage; }}
else if (innerwidth!=document.mm_pgw || innerheight!
=document.mm_pgh) location.reload();
}
mm_reloadpage(true)
function close_float_left(){
myleft.style.visibility='hidden';
}
document.write("<div id=myleft style='position:
absolute;width:80;top:300;left:5;visibility: visible;z-index: 1'>"
+"<style>"
+"a.closefloat:link,a.refloat:visited {text-
decoration:none;color:#000000;font-size:12px}"
+"a.closefloat:active,a.refloat:hover {text-decoration:underline;color:#0000ff;font-size:12px}"
+"</style>"
+"<table border=0 cellpadding=0 cellspacing=0><tr><td>");
if(document.ns){
if(ad_float_left_type!="swf")
document.write("<a href='" + ad_float_left_url + "' target
= '_blank'><img src='" + ad_float_left_src + "' width=88
height=31 border=0></a>");
else
document.write("<embed src='" + ad_float_left_src + "'
quality=high width=80 height=80 type='application/x-shockwave-
flash' id=changhongout ></embed>");
document.write("</td></tr><tr><td width=80 height=20
align=right><a href='javascript:close_float_left();void(0);'
class=closefloat><b><font color=#ff0000>关闭</font></b></a></td></tr>"
+"</table>"
+"</div>");
myload()}
把上面的代码另存为一个*.js文件,然后在想实现此效果的页面用Jb*| eN6I`4[W3C
[本_文_来_源_于_我_的_学_习_网网页设计Javascript教程 http://Www.GZU521.Com ]Jb*| eN6I`4[W3C
<script src="*.js"></script>
调用即可,*代表你另存的文件名!注意修改广告图片地址和连接地址!相应的参数可以根据页面自行调整。