分享代码,分享idea!

梦想是一种让你感到坚持就能幸福的东西!

JavaScript对联式浮动广告

摘自:http://www.111cn.net/js_a/73/3504e367c04f83f9626cf9811a52c33b.htm


var delta = 0.8;
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-86', 80, '<img src="ad.jpg" style="height:450px; width:80px;"><br><img src=images/close.gif onClick="closeBanner();">');
theFloaters.addItem('followDiv2', 6, 80, '<img src="ad.jpg" style="height:450px; width:80px;"><br><img src=images/close.gif onClick="closeBanner();">');
theFloaters.play();


如果出现无法随滚动条上下滚动的问题,请参考:http://hi.baidu.com/rwzwknskrsbfmoq/item/ecc1613f3e8549fe97f88d5f

document.body.scrollTop值为0的解决方法

做页面的时候可能会用到位置固定的层,读取document.body.scrollTop来设置层的位置,像这样,

window.onscroll=function () {
    var oFix=document.getElementById("divfix");
    oFix.style.top=document.body.scrollTop+"px";
}

可是怎么没有达到预期效果呢,输出document.body.scrollTop的值一看,一直都是0.原来是DTD的问题,要是页面直接用<html>开头的话就没有问题了.但是要符合web标准,DTD当然是不能少的.使用DTD时用document.documentElement.scrollTop代替document.body.scrollTop就可以了

window.onscroll=function () {
    var oFix=document.getElementById("divfix");
    oFix.style.top=document.documentElement.scrollTop+"px";
}


阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wbloveilove/article/details/8962447
文章标签: javascript
个人分类: JavaScript
上一篇JavaScript判断对象只有prototype属性
下一篇T-SQL行列互转(PIVOT/UNPIVOT)
想对作者说点什么? 我来说一句

浮动广告javascript

2010年04月08日 158KB 下载

javascript浮动广告

2013年07月11日 1KB 下载

javascript浮动广告代码

2007年07月05日 4KB 下载

javascript 浮动广告

2007年07月05日 4KB 下载

没有更多推荐了,返回首页

关闭
关闭