首頁 > web前端 > js教程 > 主體

怎麼操作JS實作簡單折疊展開動畫

php中世界最好的语言
發布: 2018-06-01 14:42:15
原創
1613 人瀏覽過

這次帶給大家怎麼操作JS實作簡單折疊展開動畫,操作JS實作簡單折疊展開動畫的注意事項有哪些,以下就是實戰案例,一起來看一下。

<!DOCTYPE = html>
<html>
 <head>
  <title>JS折叠展开动画</title>
  <style>
  body{
   margin: 0px;
   padding: 0px;
  }
  .red{
   background-color:red;
   width:200px;
   height:200px;
   position:relative;
   left:-200px;
   top:0px;
  }
  .blue{
   background:blue;
   width:20px;
   height:50px;
   position:absolute;
   left:200px;
   top:75px;
  }
  </style>
 </head>
 <body>
  <p class="red" id="cf1"><p class="blue" id="cf">分享</p></p>
  <script>
  window.onload = function(){
   var onp = document.getElementById("cf1");
   onp.onmouseover = function(){
    startmove(0);
   }
   onp.onmouseout = function(){
    startmove(-200);
   }
  }
  var timer ;
  function startmove(target){
   clearInterval(timer);//清除定时器,以免多次触发定时器导致速度越来越快而不是匀速前进
   var onp1 = document.getElementById("cf1");
   timer = setInterval(function(){
   var speed = 0;
   if(onp1.offsetLeft<target){
    speed = 10;
   }else{
    speed = -10;
   }
   if(onp1.offsetLeft==target){
    clearInterval(timer);
   }
   else{
   onp1.style.left = onp1.offsetLeft+speed+&#39;px&#39;;
   }
   },30)
  }
  </script>
 </body>
</html>
登入後複製

運行效果:

#小結:


##小結:
## css部分:

1、別忘記樣式初始化;2、複習css檔案的引用方式;(類別引用方式)

3、複習

絕對定位和相對定位關係(父關係用relative;子關係用absolute


##二、js部分:

1、

element.style.left & element.offsetLeft

區別:

① 前者單位是px,是字串;後者單位是數值; ② 其他參見:http://www.jb51.net/article/43981.htm2、思路開始不夠清晰,未能抽像出滑鼠放上和移開關鍵變數-目標位置不同而已

3、

函數參數

盡可能少(在能達成目標的情況下)4、滑鼠作用物件設定為父級p最好,不然會出現閃爍狀況(剛呼叫

onmouseover

,目標移除,又呼叫了

onmouseout

#5、注意清除定時器(①、防止移動時速度不穩定② 、到目標位置停止移動)

三、其他:

Q:Google瀏覽器解除禁止彈出視窗?

A:設定-進階設定-隱私設定-內容設定-彈出式窗口,進行相關設定。

相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!
推薦閱讀:

######怎麼進行JS內DOM節點使用################怎麼使用JS實作緩衝運動#### #####

以上是怎麼操作JS實作簡單折疊展開動畫的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!