Код:
программный код
/*
Первый параметр вызова парной рекламы — это идентификатор, второй параметр — картинка, а третий параметр — расстояние между рекламой и верхом.
Четвертый параметр представляет левое и правое (true — левое, false — правое), а пятый параметр представляет ширину рекламного куплета.
*/
new float_ad("ad_l","<img src='/u/info_img/2009-06/11/2009Cherry.gif' />",50,true,64);
new float_ad("ad_r","<img src='/u/info_img/2009-06/11/2009Cherry.gif' />",50,false,64)
;
URL-адрес в первом параметре вызова плавающего объявления представляет собой URL-адрес изображения плавающего объявления (обязательно), ссылку на URL-адрес страницы, текст подсказки альтернативного изображения, ширину изображения (необязательно, по умолчанию 120) и высота изображения (необязательно, по умолчанию 120)
Второй параметр представляет начальную позицию плавающей рекламы, которая определяется параметрами left и top. Третий параметр представляет плавающую скорость. 0 — статическое. Чем меньше значение, тем выше плавающая скорость.
*/
новый move_ad({url:" /u/info_img/2009-06/11/2009Cherry.gif",link:"http://jzyouth.org.cn/html/zixun/zuixingonggao/2009327/zxgg47926848.html ", alt : «Уведомление о наборе добровольцев для «Китайского международного фестиваля вишни в Даляне 2009», ширина: 200, высота: 200}, {слева: 40, вверху: 160}, 20);
// основной код
функция $(элемент){
если(аргументы.длина>1){
for(var i=0,elements=[],length=arguments.length;i<length;i++)
elements.push($(аргументы[i]));
возвратные элементы;
}
если (элемент typeof =="строка")
вернуть документ.getElementById(элемент);
еще
возвратный элемент;
}
Function.prototype.bind=функция(объект){
вар метод = это;
функция возврата(){
метод.применить(объект,аргументы);
}
}
варКласс={
создать: функция() {
функция возврата(){
this.initialize.apply(это,аргументы);
}
}
}
Object.extend=функция(назначение,ресурс){
for(свойство var в ресурсе){
назначение[свойство]=ресурс[свойство];
}
обратный пункт назначения;
}
//Реклама куплета http://www.knowsky.com/article.asp?typeid=36
вар float_ad=Class.create();
float_ad.prototype={
инициализировать: функция (идентификатор, содержимое, сверху, слева, ширина) {
document.write('<div id='+id+' style="position:absolute;">'+content+'</div>');
this.id=$(id);
this.top=топ;
если(!!слева){
this.id.style.left="8px";
}еще{
this.id.style.left=(document.documentElement.clientWidth-width-8)+"px";
window.onresize=функция(){
this.id.style.left=(document.documentElement.clientWidth-width-8)+"px";
}.bind(это);
}
this.id.style.top=top+"px";
this.interId=setInterval(this.scroll.bind(this),20);
},
прокрутка: функция() {
this.stmnStartPoint = parseInt(this.id.style.top, 10);
this.stmnEndPoint =document.documentElement.scrollTop+ this.top;
if(navigator.userAgent.indexOf("Chrome")>0){
this.stmnEndPoint=document.body.scrollTop+this.top;
}
if ( this.stmnStartPoint != this.stmnEndPoint ) {
this.stmnScrollAmount = Math.ceil( Math.abs( this.stmnEndPoint - this.stmnStartPoint ) / 15 );
this.id.style.top = parseInt(this.id.style.top, 10) + ( ( this.stmnEndPoint<this.stmnStartPoint ) ? -this.stmnScrollAmount : this.stmnScrollAmount )+"px";
}
}
}
// Плавающий класс рекламы
вар move_ad=Class.create();
move_ad.prototype={
инициализировать: функция (imgOption, initPosition, задержка) {
this.imgOptions=Object.extend({url:"",link:"",alt:"",width:120,height:120},imgOption||{});
this.adPosition=Object.extend({left:40,top:120},initPosition||{});
this.delay = задержка;
этот.шаг = 1;
this.herizonFlag=true;
this.verticleFlag = true;
this.id="ad_move_sg";
var vHtmlString="<div id='"+this.id+"' style='position:absolute; left:"+this.adPosition.left+"px; top:"+this.adPosition.top+"px; width:" +this.imgOptions.width+"px;";
vHtmlString+=" height:"+this.imgOptions.height+"px; z-index:10;'><a href='"+this.imgOptions.link+"' target='_blank' title='"+this.imgOptions .alt+"'><img src='"+this.imgOptions.url+"' width='"+this.imgOptions.width+"' height='"+this.imgOptions.height+"' style='border:none; ' alt=""+this.imgOptions.alt+"' /></a></div>";
document.write(vHtmlString);
this.id=$(this.id);
this.intervalId=setInterval(this.scroll.bind(this),this.delay);
this.id.onmouseover=this.stop.bind(this);
this.id.onmouseout=this.start.bind(this);
},
прокрутка: функция() {
вар L=T=0;
вар B=document.documentElement.clientHeight-this.id.offsetHeight;
вар R=document.documentElement.clientWidth-this.id.offsetWidth;
this.id.style.left=this.adPosition.left+document.documentElement.scrollLeft+"px";
this.id.style.top=this.adPosition.top+document.documentElement.scrollTop+"px";
this.adPosition.left =this.adPosition.left + this.step*(this.herizonFlag?1:-1);
если (this.adPosition.left < L) { this.herizonFlag = true; this.adPosition.left = L;}
если (this.adPosition.left > R) { this.herizonFlag = false; this.adPosition.left = R;}
this.adPosition.top =this.adPosition.top + this.step*(this.verticleFlag?1:-1);
if(this.adPosition.top <= T){ this.verticleFlag=true this.adPosition.top=T;}
if(this.adPosition.top >= B) { this.verticleFlag=false; this.adPosition.top=B };
},
стоп: функция() {
ClearInterval(this.intervalId);
},
начало: функция() {
this.intervalId=setInterval(this.scroll.bind(this),this.delay);
}
}