jQuery實現移動端下拉展現新的內容回彈動畫
阿新 • • 發佈:2020-06-28
jQuery移動端下拉展現新的內容動畫回彈,供大家參考,具體內容如下
jquery的方法,寫的比較細,可以改成原生的這裡就不做修改了,話不多說上程式碼,也可以改成下拉重新整理
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" /> <title>頂部回彈</title> <style type="text/css"> html,body,div,h2{ margin: 0;padding: 0;} html,body { width: 100%;height: 100%;overflow: hidden; } .wrap { width: 100%;height: 100%;overflow: hidden;position: relative; } .hideBox { width: 100%;height: 100%;background-color: #f5f5f5;position: absolute;top: 0;left: 0;overflow-y: auto;} .hideBox h2 { width: 100%;margin-top: 20%;font-size: 16px;text-align: center; } .top { width: 100%;height: 100%; position: absolute; top: 0;left: 0;z-index: 2;background-color: #fff;overflow-y: auto;text-align: center;} .moveBox {background-color: #1a84dd;color: #fff;width: 100px;height: 100px;text-align: center;line-height: 100px;border-radius: 50%;cursor: pointer; -webkit-user-select: none;-moz-user-select: none;margin: 0 auto;} .moveIn { transition: all 1s ease-in; } </style> </head> <body> <div class="wrap" > <div class="hideBox" > <h2>這是隱藏層的內容</h2> <h2>這是隱藏層的內容</h2> <h2>這是隱藏層的內容</h2> <h2>這是隱藏層的內容</h2> <h2>這是隱藏層的內容</h2> <h2>這是隱藏層的內容</h2> <h2>這是隱藏層的內容</h2> <h2>這是隱藏層的內容</h2> <h2>這是隱藏層的內容</h2> <h2>這是隱藏層的內容</h2> <h2>這是隱藏層的內容</h2> <h2>這是隱藏層的內容</h2> </div> <div class="top" > <div class="moveBox" >移動塊</div> <div class="moveBox" >移動塊</div> <div class="moveBox" >移動塊</div> <div class="moveBox" >移動塊</div> <div class="moveBox" >移動塊</div> <div class="moveBox" >移動塊</div> <div class="moveBox" >移動塊</div> <div class="moveBox" >移動塊</div> <div class="moveBox" >移動塊</div> <div class="moveBox" >移動塊</div> <div class="moveBox" >移動塊</div> </div> </div> </body> <script src="https://cdn.bootcss.com/jquery/2.1.4/jquery.min.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript"> $(function(){ moveBoxFun($(".top")); }) // 移動方法 function moveBoxFun(dome){ var startY,endY,intY,maxH = $(window).height(),maxY = maxH*0.6; // 手指移動的距離 if(dome){ dome.on('touchstart',function(e){ var touchS = e.originalEvent.targetTouches[0]; var startY = touchS.clientY; // 滑鼠相對瀏覽器視窗高度 // 獲取當前元素scrollTop var scrollTop = dome.scrollTop(); // 不在頂部禁止 if(scrollTop !== 0){ dome.css({top:0}); dome.unbind('touchmove'); return; } // 移動變數 var moveY = 0; dome.on('touchmove',function(ev){ var touchM = ev.originalEvent.targetTouches[0]; var mY = touchM.clientY; moveY+=2; if(mY - startY > 0){ dome.css({ top: moveY+'px' }) } // 如果重新整理可以改成 window.location.reload() }) dome.on('touchend',function(ev){ var touchE = ev.originalEvent.changedTouches[0]; var endY = touchE.clientY; dome.unbind('mousemove'); if(endY - startY >0&& endY - startY > maxY){ dome.animate({ top: maxH + 'px' },function(){ dome.hide(); }) }else{ dome.css({ top:'0px' },200) } }); }); } } </script> </html>
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。