欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

javascript AutoScroller 函數(shù)類

 更新時間:2009年05月29日 20:33:01   作者:  
javascript AutoScroller 自動滾動類代碼,學(xué)習(xí)類的朋友可以參考下。
復(fù)制代碼 代碼如下:

/*
* Copyright (C) 2007-2009 skylark
* Email:aohailin@gmail.com
* Version:2.1
* 原創(chuàng)程序,轉(zhuǎn)載請保留版權(quán)
*/
var $=function(o){return typeof o=="string"?document.getElementById(o):o;};
function AutoScroll(){
this.obj=[];
this.version="2.1";
this.Build();//初始化
};
AutoScroll.prototype.Build=function(){
var me=this;
//取得其他滾動事件
var oldscroll=window.onscroll;
window.onscroll=function(){
//保護其他滾動事件
if("function"==typeof oldscroll){
oldscroll();
}
//得到客戶端瀏覽器參數(shù),兼容IE,F(xiàn)F,Chrome
this.common={
t:document.documentElement.scrollTop||document.body.scrollTop,
h:document.documentElement.clientHeight||document.body.clientHeight,
w:document.documentElement.clientWidth||document.body.clientWidth
};
this.position=[];
for(var i=0;i<me.obj.length;i++){
try{
this.style={};
//獲得客戶端位置,設(shè)置了7種位置
//為了讓最小化自動適應(yīng)位置,這里動態(tài)計算位置,所以滾動事件觸發(fā)時,CPU消耗很大
this.position[i]=[
{x:0,y:this.common.t},
{x:this.common.w-me.obj[i].obj.offsetWidth,y:this.common.t},
{x:0,y:(this.common.h+this.common.t-me.obj[i].obj.offsetHeight)/2+(this.common.t)/2},
{x:this.common.w-me.obj[i].obj.offsetWidth,y:(this.common.h+this.common.t-me.obj[i].obj.offsetHeight)/2+(this.common.t)/2},
{x:(this.common.w-me.obj[i].obj.offsetWidth)/2,y:(this.common.h+this.common.t-me.obj[i].obj.offsetHeight)/2+(this.common.t)/2},
{x:0,y:this.common.h+this.common.t-me.obj[i].obj.offsetHeight},
{x:this.common.w-me.obj[i].obj.offsetWidth,y:this.common.h+this.common.t-me.obj[i].obj.offsetHeight}
];
//處理自定義樣式
this.style="object"==typeof me.obj[i].style?{x:me.obj[i].style.left,y:me.obj[i].style.top+this.common.t}:{x:this.position[i][me.obj[i].style].x,y:this.position[i][me.obj[i].style].y};
//定位
me.obj[i].obj.style.left=this.style.x+"px";
me.obj[i].obj.style.top=this.style.y+"px";
}catch(e){
//功能是過濾無效obj
for(var j=i;j<me.obj.length-1;j++){
me.obj[j]=me.obj[j+1];
me.obj.length=me.obj.length-1;
}
}
}
};
//初始化
window.scroll(1,1);
};
AutoScroll.prototype.Add=function(){
var obj=arguments[0];
//獲得當(dāng)前position
var oldposition=$(obj.id).style.position;
$(obj.id).style.position="absolute";
//不使用fixed,雖然高版本瀏覽器都已經(jīng)支持fixed
this.obj.push({
obj:$(obj.id),
oldposition:oldposition,
style:obj.style
});
};
AutoScroll.prototype.Remove=function(){
var obj=arguments[0];
for(var i=0;i<this.obj.length;i++){
if(this.obj[i].obj==$(obj.id)){
//還原初始狀態(tài)position
this.obj[i].obj.style.position=this.obj[i].oldposition;
//是否真正移除
if(obj.remove){
this.obj[i].obj.innerHTML="";
document.body.removeChild(this.obj[i].obj);
}
//移除obj
for(var j=i;j<this.obj.length-1;j++){
this.obj[j]=this.obj[j+1];
}
this.obj.length=this.obj.length-1;
break;
}
}
};
var Scroller=new AutoScroll();

相關(guān)文章

  • javascript數(shù)組去重方法終極總結(jié)

    javascript數(shù)組去重方法終極總結(jié)

    這篇文章主要介紹了javascript數(shù)組去重終極總結(jié),本文列舉了3種javascript數(shù)組去重方法,并分別分析了它們的優(yōu)缺點,需要的朋友可以參考下
    2014-06-06
  • js canvas實現(xiàn)QQ撥打電話特效

    js canvas實現(xiàn)QQ撥打電話特效

    這篇文章主要為大家詳細介紹了js canvas實現(xiàn)QQ撥打電話特效,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • JavaScript中判斷原生函數(shù)檢查function是否是原生代碼

    JavaScript中判斷原生函數(shù)檢查function是否是原生代碼

    檢查某個function是否是原生代碼,要檢測這一點,最簡單的辦法當(dāng)然是判斷函數(shù)的 toString 方法返回的值
    2014-09-09
  • JS解決url傳值出現(xiàn)中文亂碼的另類辦法

    JS解決url傳值出現(xiàn)中文亂碼的另類辦法

    為什么用表單的方式就可以傳遞中文,而URL的方式就不行了呢?非得用URL傳值的方式才能解決問題嗎?這里我想到了動態(tài)表單,何不用它來解決呢
    2013-04-04
  • javascript實現(xiàn)列表切換效果

    javascript實現(xiàn)列表切換效果

    這篇文章主要為大家詳細介紹了javascript實現(xiàn)列表切換效果的相關(guān)資料,需要的朋友可以參考下
    2016-05-05
  • JavaScript?字符串新增方法?trim()?的使用說明

    JavaScript?字符串新增方法?trim()?的使用說明

    這篇文章主要介紹了JavaScript字符串新增方法trim()的使用說明,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的朋友可以參考一下
    2022-09-09
  • javascript中sort() 方法使用詳解

    javascript中sort() 方法使用詳解

    sort()方法主要是用于對數(shù)組進行排序,默認情況下該方法是將數(shù)組元素轉(zhuǎn)換成字符串,然后按照ASC碼進行排序,這個大家都能理解,但如果數(shù)組元素是一個Object呢,轉(zhuǎn)不了字符串,難道不能進行排序?答案當(dāng)然是否定的,那么我們就來詳細探討下sort()方法的使用
    2015-08-08
  • Js獲取table當(dāng)前tr行的值的代碼

    Js獲取table當(dāng)前tr行的值的代碼

    table tr行內(nèi)td里面的input的值
    2009-12-12
  • JavaScript模擬實現(xiàn)"雙11"限時秒殺效果

    JavaScript模擬實現(xiàn)"雙11"限時秒殺效果

    每年的“雙11”啊,都是大家的剁手節(jié)。大家都在晚上12點,捧著手機看著倒計時,在他倒數(shù)到0的時候瘋狂點擊下單??墒悄阌袥]想過限時秒殺是怎么實現(xiàn)的呢?本文將為你揭秘如何用JavaScript實現(xiàn)限時秒殺,快來了解一下吧
    2022-03-03
  • List the UTC Time on a Computer

    List the UTC Time on a Computer

    List the UTC Time on a Computer...
    2007-06-06

最新評論