最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript實現(xiàn)圖片DIV豎向滑動的方法

 更新時間:2015年04月25日 11:17:26   作者:休閑生活文化  
這篇文章主要介紹了JavaScript實現(xiàn)圖片DIV豎向滑動的方法,涉及javascript操作div層的相關(guān)技巧,需要的朋友可以參考下

本文實例講述了JavaScript實現(xiàn)圖片DIV豎向滑動的方法。分享給大家供大家參考。具體實現(xiàn)方法如下:

<!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>圖片滑動展示效果</title>
<script type="text/javascript">
var $$ = function (id) {
return "string" == typeof id ? document.getElementById(id) : id;
};
function Event(e){
var oEvent = document.all ? window.event : e;
if (document.all) {
if(oEvent.type == "mouseout") {
oEvent.relatedTarget = oEvent.toElement;
}else if(oEvent.type == "mouseover") {
oEvent.relatedTarget = oEvent.fromElement;
}
}
return oEvent;
}
function addEventHandler(oTarget, sEventType, fnHandler) {
if (oTarget.addEventListener) {
oTarget.addEventListener(sEventType, fnHandler, false);
} else if (oTarget.attachEvent) {
oTarget.attachEvent("on" + sEventType, fnHandler);
} else {
oTarget["on" + sEventType] = fnHandler;
}
};
var Class = {
create: function() {
return function() {
this.initialize.apply(this, arguments);
}
}
}
Object.extend = function(destination, source) {
for (var property in source) {
destination[property] = source[property];
}
return destination;
}


var GlideView = Class.create();
GlideView.prototype = {
//容器對象 容器寬度 展示標簽 展示寬度
initialize: function(obj, iHeight, sTag, iMaxHeight, options) {
var oContainer = $$(obj), oThis=this, len = 0;
this.SetOptions(options);
this.Step = Math.abs(this.options.Step);
this.Time = Math.abs(this.options.Time);
this._list = oContainer.getElementsByTagName(sTag);
len = this._list.length;
this._count = len;
this._height = parseInt(iHeight / len);
this._height_max = parseInt(iMaxHeight);
this._height_min = parseInt((iHeight - this._height_max) / (len - 1));
this._timer = null;
this.Each(function(oList, oText, i){
oList._target = this._height * i;//自定義一個屬性放目標left
oList.style.top = oList._target + "px";
oList.style.position = "absolute";
addEventHandler(oList, "mouseover", function(){ oThis.Set.call(oThis, i); });
})
//容器樣式設(shè)置
oContainer.style.height = iHeight + "px";
oContainer.style.overflow = "hidden";
oContainer.style.position = "relative";
//移出容器時返回默認狀態(tài)
addEventHandler(oContainer, "mouseout", function(e){
//變通防止執(zhí)行oList的mouseout
var o = Event(e).relatedTarget;
if (oContainer.contains ? !oContainer.contains(o) : oContainer != o && !(oContainer.compareDocumentPosition(o) & 16)) oThis.Set.call(oThis, -1);
})
},
//設(shè)置默認屬性
SetOptions: function(options) {
this.options = {//默認值
Step:20,//滑動變化率
Time:3,//滑動延時
TextTag:"",//說明容器tag
TextHeight: 0//說明容器高度
};
Object.extend(this.options, options || {});
},
//相關(guān)設(shè)置
Set: function(index) {
if (index < 0) {
//鼠標移出容器返回默認狀態(tài)
this.Each(function(oList, oText, i){ oList._target = this._height * i; if(oText){ oText._target = this._height_text; } })
} else {
//鼠標移到某個滑動對象上
this.Each(function(oList, oText, i){
oList._target = (i <= index) ? this._height_min * i : this._height_min * (i - 1) + this._height_max;
if(oText){ oText._target = (i == index) ? 0 : this._height_text; }
})
}
this.Move();
},
//移動
Move: function() {
clearTimeout(this._timer);
var bFinish = true;//是否全部到達目標地址
this.Each(function(oList, oText, i){
var iNow = parseInt(oList.style.top), iStep = this.GetStep(oList._target, iNow);
if (iStep != 0) { bFinish = false; oList.style.top = (iNow + iStep) + "px"; }
})
//未到達目標繼續(xù)移動
if (!bFinish) { var oThis = this; this._timer = setTimeout(function(){ oThis.Move(); }, this.Time); }
},
//獲取步長
GetStep: function(iTarget, iNow) {
var iStep = (iTarget - iNow) / this.Step;
if (iStep == 0) return 0;
if (Math.abs(iStep) < 1) return (iStep > 0 ? 1 : -1);
return iStep;
},
Each:function(fun) {
for (var i = 0; i < this._count; i++)
fun.call(this, this._list[i], (this.Showtext ? this._text[i] : null), i);
}
};
</script>
<style type="text/css">
#idGlideView {
height:314px;
width:325px;
margin:0 auto;
}
#idGlideView div {
width:325px;
height:314px;
}
</style>
</head>
<body>
<div id="idGlideView">
<div style="background-color:#006699;"> 鼠標移到這里試試看!</div>
<div style="background-color:#FF9933;"> 鼠標移到這里試試看!</div>
</div>
<div>http://m.fzitv.net/</div>
<SCRIPT>
var gv = new GlideView("idGlideView", 314, "div", 280,"");
</SCRIPT>
</body>
</html>

希望本文所述對大家的javascript程序設(shè)計有所幫助。

相關(guān)文章

  • JavaScript使用Math.random()生成簡單的驗證碼

    JavaScript使用Math.random()生成簡單的驗證碼

    今天小編就為大家分享一篇關(guān)于JavaScript使用Math.random()生成簡單的驗證碼,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • js傳各種類型參數(shù)到Controller層的整理方式

    js傳各種類型參數(shù)到Controller層的整理方式

    這篇文章主要介紹了js傳各種類型參數(shù)到Controller層的整理方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • JS中Swiper的使用和輪播圖效果

    JS中Swiper的使用和輪播圖效果

    Swiper是移動端的一款非常強大的觸摸滑動插件。下面通過本文給大家分享JS中Swiper的使用和輪播圖效果,感興趣的的朋友一起看看吧
    2017-08-08
  • JavaScript中值類型和引用類型的區(qū)別

    JavaScript中值類型和引用類型的區(qū)別

    本文主要介紹了JavaScript中值類型和引用類型的區(qū)別,具有很好的參考價值,下面跟著小編一起來看下吧
    2017-02-02
  • 百度地圖api如何使用

    百度地圖api如何使用

    如果想用百度地圖api,首先需要先獲取一個百度地圖api的密鑰,然后引入百度地圖的api,這篇文章就講下百度地圖api如何使用的相關(guān)資料,需要的朋友可以參考下
    2015-08-08
  • JavaScript中Array方法你該知道的正確打開方法

    JavaScript中Array方法你該知道的正確打開方法

    string和array作為javascript內(nèi)置對象,其中許多方法無論是在開發(fā)過程中,還是在面試的時候都有機會被面試官問到,下面這篇文章主要給大家介紹了關(guān)于JavaScript中Array方法你該知道的正確打開方法,需要的朋友可以參考下
    2018-09-09
  • javascript實現(xiàn)的猜數(shù)小游戲完整實例代碼

    javascript實現(xiàn)的猜數(shù)小游戲完整實例代碼

    這篇文章主要介紹了javascript實現(xiàn)的猜數(shù)小游戲,游戲中用戶共有10次猜測機會,并且每次都有不同的提示信息,該游戲涉及javascript流程控制與數(shù)值運算的相關(guān)技巧,需要的朋友可以參考下
    2016-05-05
  • 談?wù)剬avaScript原生拖放的深入理解

    談?wù)剬avaScript原生拖放的深入理解

    拖放(drag-and-drop,DnD)其實是兩個動作——拖和放。所以,它涉及到兩個元素。一個是被拖的元素,稱為拖放源;另一個是要放的目標,稱為拖放目標。本文將通過拆分這兩個概念來詳細介紹原生拖放,感興趣的朋友一起學(xué)習(xí)吧
    2016-09-09
  • 微信小程序?qū)崿F(xiàn)豎排slider效果

    微信小程序?qū)崿F(xiàn)豎排slider效果

    這篇文章主要為大家詳細介紹了微信小程序?qū)崿F(xiàn)豎排slider效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • js如何獲取兄弟、父類等節(jié)點

    js如何獲取兄弟、父類等節(jié)點

    本文為大家介紹下js獲取兄弟、父類等節(jié)點的方法,感興趣的朋友可以參考下
    2014-01-01

最新評論

临江市| 苍梧县| 永寿县| 聊城市| 富裕县| 曲靖市| 达日县| 南京市| 武川县| 山东省| 平度市| 云霄县| 正镶白旗| 科技| 运城市| 漾濞| 方山县| 环江| 穆棱市| 潜山县| 治多县| 仙桃市| 全南县| 台北县| 民勤县| 双柏县| 贵阳市| 滦南县| 浠水县| 平阳县| 渝中区| 吴堡县| 东乌珠穆沁旗| 象州县| 崇仁县| 峨眉山市| 南昌县| 外汇| 永定县| 会昌县| 常德市|