国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

JS實現帶緩沖效果打開、關閉、移動一個層的方法

2024-05-06 16:19:43
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了JS實現帶緩沖效果打開、關閉、移動一個層的方法,涉及javascript鼠標事件及頁面元素操作技巧,需要的朋友可以參考下

本文實例講述了JS帶緩沖效果打開、關閉、移動一個層的方法。分享給大家供大家參考。具體實現方法如下:

 

 
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
  3. <html xmlns="http://www.w3.org/1999/xhtml" lang="gb2312"
  4. <head> 
  5. <title>JavaScript緩沖打開層</title> 
  6. <meta http-equiv="Content-Type" content="text/html; charset=gb2312"/> 
  7. <style type="text/css"
  8. * { 
  9. margin:0; padding:0; 
  10. body { 
  11. margin:5px auto; text-align:center; background:#f0f0f0; 
  12. #d1 { 
  13. position:absolute; top:20px; 
  14. left:20px; width:100px; height:60px; 
  15. border:1px solid #808; 
  16. #d2 { 
  17. position:absolute; top:100px; 
  18. left:20px; width:100px; height:60px; 
  19. border:1px solid #808; 
  20. #open1, #close1, #open2, #close2 { 
  21. cursor:pointer; background:#ccf; margin:5px; 
  22. #open1, #open2 { 
  23. display:block; 
  24. #close1, #close2 { 
  25. display:none; 
  26. </style> 
  27. </head> 
  28. <body> 
  29. <div id="d1"
  30. 移動位置 
  31. <span id="open1" onclick="fo1()">Open</span> 
  32. <span id="close1" onclick="fc1()">Close</span> 
  33. </div> 
  34. <div id="d2"
  35. 改變大小 
  36. <span id="open2" onclick="fo2()">Open</span> 
  37. <span id="close2" onclick="fc2()">Close</span> 
  38. </div> 
  39. <div id="debug">AAA</div> 
  40. <script type="text/javascript"
  41. //<[CDATA[ 
  42. var sl = 20; //初始left值 
  43. var el = 500; //結束left值 
  44. var sw = 100;//初始width值 
  45. var ew = 580;//結束width值 
  46. var p = 10; //緩沖變量 
  47. var t = 20; //時間變量 
  48. var d1 = document.getElementById('d1'); 
  49. var d2 = document.getElementById('d2'); 
  50. var debug = document.getElementById('debug'); 
  51. var open1 = document.getElementById('open1'); 
  52. var close1 = document.getElementById('close1'); 
  53. var open2 = document.getElementById('open2'); 
  54. var close2 = document.getElementById('close2'); 
  55. function fo1() { 
  56. var cl = parseInt(getStyle(d1,'left')); 
  57. //當前left值 
  58. if (cl<el) { 
  59. d1.style.left = cl + Math.ceil((el-cl)/p) + 'px'
  60. //當前值+緩沖增量 
  61. debug.innerHTML = getStyle(d1,'left'); 
  62. //cl + 'px'; 
  63. setTimeout('fo1()', t); 
  64. else { 
  65. d1.style.left = el + 'px'
  66. open1.style.display = 'none'
  67. close1.style.display = 'block'
  68. function fc1() { 
  69. var cl = parseInt(getStyle(d1,'left')); 
  70. //當前left值 
  71. if (cl>sl) { 
  72. d1.style.left = cl - Math.ceil((cl-sl)/p) + 'px'
  73. //當前值-緩沖增量 
  74. debug.innerHTML = getStyle(d1,'left'); 
  75. //cl + 'px'; 
  76. setTimeout('fc1()', t); 
  77. else { 
  78. d1.style.left = sl + 'px'
  79. open1.style.display = 'block'
  80. close1.style.display = 'none'
  81. function fo2() { 
  82. var cw = parseInt(getStyle(d2,'width')); 
  83. //當前width值 
  84. if (cw<ew) { 
  85. d2.style.width = cw + Math.ceil((ew-cw)/p) + 'px'
  86. //當前值+緩沖增量 
  87. debug.innerHTML = getStyle(d2,'width'); 
  88. //cw + 'px'; 
  89. setTimeout('fo2()', t); 
  90. else { 
  91. d2.style.width = ew + 'px'
  92. open2.style.display = 'none'
  93. close2.style.display = 'block'
  94. function fc2() { 
  95. var cw = parseInt(getStyle(d2,'width')); 
  96. //當前width值 
  97. if (cw>sw) { 
  98. d2.style.width = cw - Math.ceil((cw-sw)/p) + 'px'
  99. //當前值-緩沖增量 
  100. debug.innerHTML = getStyle(d2,'width'); 
  101. //cw + 'px'; 
  102. setTimeout('fc2()', t); 
  103. else { 
  104. d2.style.width = sw + 'px'
  105. open2.style.display = 'block'
  106. close2.style.display = 'none'
  107. function getStyle( elem, name ) {  
  108. if (elem.style[name]) { return elem.style[name]; }  
  109. else if (elem.currentStyle) { return elem.currentStyle[name]; }  
  110. else if (document.defaultView && document.defaultView.getComputedStyle){ 
  111. name = name.replace(/([A-Z])/g,"-$1");  
  112. name = name.toLowerCase();  
  113. var s = document.defaultView.getComputedStyle(elem,"");  
  114. return s && s.getPropertyValue(name);  
  115. }  
  116. else { return null; }  
  117. //]]> 
  118. </script> 
  119. </body> 
  120. </html> 

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 莆田市| 太仓市| 博湖县| 汤原县| 府谷县| 无棣县| 瑞安市| 余姚市| 石阡县| 容城县| 司法| 郓城县| 临沭县| 融水| 四平市| 太谷县| 内丘县| 天气| 日喀则市| 长沙市| 铜梁县| 绵阳市| 巧家县| 灵璧县| 武川县| 民乐县| 霸州市| 和田县| 天峨县| 新安县| 新疆| 昆山市| 牟定县| 崇州市| 新巴尔虎左旗| 响水县| 长沙市| 江津市| 牙克石市| 澄迈县| 葫芦岛市|