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

JS實現(xiàn)帶緩沖效果打開、關(guān)閉、移動一個層的方法

 更新時間:2015年05月09日 09:49:04   作者:休閑生活文化  
這篇文章主要介紹了JS實現(xiàn)帶緩沖效果打開、關(guān)閉、移動一個層的方法,涉及javascript鼠標(biāo)事件及頁面元素操作技巧,需要的朋友可以參考下

本文實例講述了JS帶緩沖效果打開、關(guān)閉、移動一個層的方法。分享給大家供大家參考。具體實現(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" lang="gb2312">
<head>
<title>JavaScript緩沖打開層</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>
<style type="text/css">
* {
margin:0; padding:0;
}
body {
margin:5px auto; text-align:center; background:#f0f0f0;
}
#d1 {
position:absolute; top:20px;
left:20px; width:100px; height:60px;
border:1px solid #808;
}
#d2 {
position:absolute; top:100px;
left:20px; width:100px; height:60px;
border:1px solid #808;
}
#open1, #close1, #open2, #close2 {
cursor:pointer; background:#ccf; margin:5px;
}
#open1, #open2 {
display:block;
}
#close1, #close2 {
display:none;
}
</style>
</head>
<body>
<div id="d1">
移動位置
<span id="open1" onclick="fo1()">Open</span>
<span id="close1" onclick="fc1()">Close</span>
</div>
<div id="d2">
改變大小
<span id="open2" onclick="fo2()">Open</span>
<span id="close2" onclick="fc2()">Close</span>
</div>
<div id="debug">AAA</div>
<script type="text/javascript">
//<[CDATA[
var sl = 20; //初始left值
var el = 500; //結(jié)束left值
var sw = 100;//初始width值
var ew = 580;//結(jié)束width值
var p = 10; //緩沖變量
var t = 20; //時間變量
var d1 = document.getElementById('d1');
var d2 = document.getElementById('d2');
var debug = document.getElementById('debug');
var open1 = document.getElementById('open1');
var close1 = document.getElementById('close1');
var open2 = document.getElementById('open2');
var close2 = document.getElementById('close2');
function fo1() {
var cl = parseInt(getStyle(d1,'left'));
//當(dāng)前l(fā)eft值
if (cl<el) {
d1.style.left = cl + Math.ceil((el-cl)/p) + 'px';
//當(dāng)前值+緩沖增量
debug.innerHTML = getStyle(d1,'left');
//cl + 'px';
setTimeout('fo1()', t);
} else {
d1.style.left = el + 'px';
open1.style.display = 'none';
close1.style.display = 'block';
}
}
function fc1() {
var cl = parseInt(getStyle(d1,'left'));
//當(dāng)前l(fā)eft值
if (cl>sl) {
d1.style.left = cl - Math.ceil((cl-sl)/p) + 'px';
//當(dāng)前值-緩沖增量
debug.innerHTML = getStyle(d1,'left');
//cl + 'px';
setTimeout('fc1()', t);
} else {
d1.style.left = sl + 'px';
open1.style.display = 'block';
close1.style.display = 'none';
}
}
function fo2() {
var cw = parseInt(getStyle(d2,'width'));
//當(dāng)前width值
if (cw<ew) {
d2.style.width = cw + Math.ceil((ew-cw)/p) + 'px';
//當(dāng)前值+緩沖增量
debug.innerHTML = getStyle(d2,'width');
//cw + 'px';
setTimeout('fo2()', t);
} else {
d2.style.width = ew + 'px';
open2.style.display = 'none';
close2.style.display = 'block';
}
}
function fc2() {
var cw = parseInt(getStyle(d2,'width'));
//當(dāng)前width值
if (cw>sw) {
d2.style.width = cw - Math.ceil((cw-sw)/p) + 'px';
//當(dāng)前值-緩沖增量
debug.innerHTML = getStyle(d2,'width');
//cw + 'px';
setTimeout('fc2()', t);
} else {
d2.style.width = sw + 'px';
open2.style.display = 'block';
close2.style.display = 'none';
}
}
function getStyle( elem, name ) { 
if (elem.style[name]) { return elem.style[name]; } 
else if (elem.currentStyle) { return elem.currentStyle[name]; } 
else if (document.defaultView && document.defaultView.getComputedStyle){
name = name.replace(/([A-Z])/g,"-$1"); 
name = name.toLowerCase(); 
var s = document.defaultView.getComputedStyle(elem,""); 
return s && s.getPropertyValue(name); 
} 
else { return null; } 
}
//]]>
</script>
</body>
</html>

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

相關(guān)文章

  • JavaScript中的事件循環(huán)機(jī)制及其運行原理

    JavaScript中的事件循環(huán)機(jī)制及其運行原理

    JavaScript中的事件循環(huán)機(jī)制是一種異步處理機(jī)制,通過維護(hù)事件隊列和消息隊列,實現(xiàn)任務(wù)的分發(fā)和執(zhí)行。事件循環(huán)機(jī)制由主線程和任務(wù)隊列構(gòu)成,主線程運行完當(dāng)前任務(wù)后會檢查任務(wù)隊列中是否有待執(zhí)行的任務(wù),如有則執(zhí)行,否則等待
    2023-04-04
  • ECharts儀表盤實例代碼(附源碼下載)

    ECharts儀表盤實例代碼(附源碼下載)

    大家在汽車駕駛艙里一眼就可以看到儀表盤,使用使用Echarts制作的儀表盤可以輕松展示用戶的數(shù)據(jù),清晰的看出某個指標(biāo)值所在的范圍,儀表盤形式的報表應(yīng)用在各種統(tǒng)計系統(tǒng)中,本文結(jié)合實例講解儀表盤在銷售任務(wù)完成率的統(tǒng)計應(yīng)用
    2016-02-02
  • Js利用正則表達(dá)式去除字符串的中括號

    Js利用正則表達(dá)式去除字符串的中括號

    這篇文章主要給大家介紹了關(guān)于Js利用正則表達(dá)式去除字符串的中括號的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • JS操作圖片(增,刪,改) 例子

    JS操作圖片(增,刪,改) 例子

    JS操作圖片(增,刪,改) 例子,需要的朋友可以參考一下
    2013-04-04
  • 利用Angularjs和Bootstrap前端開發(fā)案例實戰(zhàn)

    利用Angularjs和Bootstrap前端開發(fā)案例實戰(zhàn)

    這篇文章主要為大家介紹了利用Angularjs和Bootstrap前端開發(fā)案例實戰(zhàn),感興趣的小伙伴們可以參考一下
    2016-08-08
  • 純javascript制作日歷控件

    純javascript制作日歷控件

    本文給大家分享的是使用純javascript實現(xiàn)的日歷控件的代碼,筆者也是第一次寫控件,摸索著前行,
    2015-07-07
  • 幾種延遲加載JS代碼的方法加快網(wǎng)頁的訪問速度

    幾種延遲加載JS代碼的方法加快網(wǎng)頁的訪問速度

    如何延遲javascript代碼的加載,加快網(wǎng)頁的訪問速度,為了讓我們的網(wǎng)頁加載速度更快,本文總結(jié)了一下幾個注意點,感興趣的朋友可以參考下
    2013-10-10
  • 使用next.js開發(fā)網(wǎng)址縮短服務(wù)的方法

    使用next.js開發(fā)網(wǎng)址縮短服務(wù)的方法

    這篇文章主要介紹了使用next.js開發(fā)網(wǎng)址縮短服務(wù),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • 在ABP框架中使用BootstrapTable組件的方法

    在ABP框架中使用BootstrapTable組件的方法

    ABP是“ASP.NET Boilerplate Project (ASP.NET樣板項目)”的簡稱,它是一個成熟的開源框架,基于DDD+Repository模式,自帶Zero權(quán)限和認(rèn)證模塊,避免了從零開始搭建框架的煩惱。今天來分享下如何在ABP框架的模式里面使用bootstrapTable組件。
    2017-07-07
  • webpack file-loader和url-loader的區(qū)別

    webpack file-loader和url-loader的區(qū)別

    這篇文章主要介紹了webpack file-loader和url-loader的區(qū)別,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-01-01

最新評論

宁远县| 江油市| 海淀区| 涟水县| 聂拉木县| 舞钢市| 湘西| 汾阳市| 多伦县| 密云县| 景宁| 内江市| 遂川县| 安图县| 江达县| 临沭县| 陵水| 阳东县| 威宁| 霍山县| 神池县| 奉节县| 柏乡县| 镇坪县| 岱山县| 育儿| 利川市| 亚东县| 宝丰县| 和田市| 磐石市| 长沙市| 永寿县| 吉安县| 绥阳县| 乌恰县| 平阳县| 广安市| 富民县| 平果县| 江津市|