今天和你們分享一下用 animate 實現滑動切換效果的小例子 ------- 來自<一隻有夢想的前端小白>javascript
你們都知道jQuery 提供的有一下幾種方法可以實現滑動效果:css
可是以上的滑動不太方便控制其滑動的方向,因此咱們仍是本身動手寫一個吧。。。html
其代碼以下:前端
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <title>Examples</title> <meta name="description" content=""> <meta name="keywords" content=""> <style type="text/css"> body{ width: 100%; height: auto; } .content{ width: 150px; height: 50px; position: absolute; top: 20px; left: 20px; overflow: hidden; background-color: red; } .slide-box{ width: 300px; position: relative; overflow: hidden; } .slide1{ width: 150px; height: 50px; float: left; display: inline-block; line-height: 50px; text-align: center; background-color: #BDD8CF; } .slide2{ width: 150px; height: 50px; float: right; display: inline-block; line-height: 50px; text-align: center; background-color: #C1C4C4; } </style> </head> <body> <div class="content"> <div class="slide-box"> <span class="slide1">左邊的元素</span> <span class="slide2">右邊的元素</span> </div> </div> <script src="js/jquery-1.11.2.min.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript"> $(function(){ $(".content").hover(function(){ $(".slide-box").stop(true).animate({right:"150px"},'slow'); },function(){ $(".slide-box").stop(true).animate({right:"0"},'slow'); }); }) </script> </body> </html>
以上代碼便可以實現一個完整的滑動效果。可是有一點須要注意,java
如上圖所示,須要加上 stop() 事件 ,防止鼠標快速移動時產生的多個事件,造成一個棧隊,形成鼠標移除後依舊滑動甚至閃動的效果。jquery
但願以上的介紹對您能有所幫助,同時這也是我本身只是內化的過程,感謝博客園平臺!----來自<一隻有夢想的前端小白>chrome