Heim  >  Artikel  >  Web-Frontend  >  Das HTML5-Touch-Ereignis realisiert das Auf- und Abwärtsschieben der Touchscreen-Seite (1)

Das HTML5-Touch-Ereignis realisiert das Auf- und Abwärtsschieben der Touchscreen-Seite (1)

不言
不言Original
2018-06-05 14:43:583547Durchsuche

In diesem Artikel wird hauptsächlich der Code im Zusammenhang mit dem HTML5-Touch-Ereignis vorgestellt, um das Auf- und Abwärtsgleiten der Touchscreen-Seite zu realisieren. Interessierte Freunde können sich auf das beziehen, was

hat Das App-Projekt verursachte aufgrund der Verwendung von overflow:hidden viele Probleme, daher beschloss ich, das Touch-Ereignis von HTML5 zu untersuchen. Es ist schwierig, einen umfassenden Beitrag zu HTML5 Touch zu finden, die meisten davon stellen Touch-Ereignisse oder sehr kurze Demos vor.
Eine relativ umfassende kleine Demo zum Auf- und Abgleiten, der Code ist relativ einfach.

Das Folgende ist der vollständige Code. Ich habe mehrere wichtige Stellen rot markiert.

XML/HTML-CodeKopieren Sie den Inhalt in die Zwischenablage.

<!doctype html>  
<html lang="en">  
<head>  
    <meta charset="UTF-8">  
    <meta name="viewport" content="width=device-width,initial-scale=1 user-scalable=0"/>  
    <title>2014-4-29</title>  
    <style>  
    * {margin: 0;  padding: 0;}   
    #outer{ width:90%; height: 490px; background: #000; margin: auto;  overflow: hidden;}   
    #inner{width:80%; height: 2000px; background: #f67d42; margin: auto; position:relative; top:0;  }   
    </style>  
    <script src=&#39;jquery-1.9.1.min.js&#39;></script>  
</head>  
<body>  
  
<p id="spText"></p>  
    <p id="outer">  
        <p id="inner">  
        123<br>        123<br>    gag<br> af<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> yryyr<br> ryry<br> 123<br> 123<br> 123<br> 123<br> 123<br> sdff<br> fef<br> 123<br> hr<br> hrh<br> 5y<br> 123<br> er<br> ert<br> 123<br> rgdgdg<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> gfgfgfgfgfgf<br> sdsdsdsdsdsd<br> sf<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> gdggdgdg<br> 123<br> drgdrgd<br> 123<br> 123<br> 123<br> yuyuyuyuyuy<br> hjkhjkhkhkhjkhkh<br> kjkjk<br>123<br>      123<br>    gag<br> af<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> yryyr<br> ryry<br> 123<br> 123<br> 123<br> 123<br> 123<br> sdff<br> fef<br> 123<br> hr<br> hrh<br> 5y<br> 123<br> er<br> ert<br> 123<br> rgdgdg<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> gfgfgfgfgfgf<br> sdsdsdsdsdsd<br> sf<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> 123<br> gdggdgdg<br> 123<br> drgdrgd<br> 123<br> 123<br> 123<br> yuyuyuyuyuy<br> hjkhjkhkhkhjkhkh<br> kjkjk<br>         
        </p>  
    </p>  
  
    <script>  
        var startX,//触摸时的坐标   
            startY,   
             x, //滑动的距离   
             y,   
             aboveY=0; //设一个全局变量记录上一次内部块滑动的位置    
  
         var inner=document.getElementById("inner");   
            
            function touchSatrt(e){//触摸   
                e.preventDefault();   
                var touch=e.touches[0];   
                startY = touch.pageY;   //刚触摸时的坐标                 
            }   
  
            function touchMove(e){//滑动             
                 e.preventDefault();           
                 var  touch = e.touches[0];                  
                 y = touch.pageY - startY;//滑动的距离   
                //inner.style.webkitTransform = &#39;translate(&#39; + 0+ &#39;px, &#39; + y + &#39;px)&#39;;  //也可以用css3的方式        
                inner.style.top=aboveY+y+"px"; //这一句中的aboveY是inner上次滑动后的位置                      
            }     
  
            function touchEnd(e){//手指离开屏幕   
              e.preventDefault();                      
              aboveY=parseInt(inner.style.top);//touch结束后记录内部滑块滑动的位置 在全局变量中体现 一定要用parseInt()将其转化为整数字;   
  
            }//   
             document.getElementById("outer").addEventListener(&#39;touchstart&#39;, touchSatrt,false);     
             document.getElementById("outer").addEventListener(&#39;touchmove&#39;, touchMove,false);     
             document.getElementById("outer").addEventListener(&#39;touchend&#39;, touchEnd,false);     
    </script>  
</body>  
  
</html>

Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird.

Verwandte Empfehlungen:

Über HTML5 zur Implementierung der Bildkomprimierungs-Upload-Funktion

Das obige ist der detaillierte Inhalt vonDas HTML5-Touch-Ereignis realisiert das Auf- und Abwärtsschieben der Touchscreen-Seite (1). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn