2016-08-09 69 views
-2

Ich möchte onfling Ereignis in Javascript reproduzieren.
Ich weiß, ich muss px/Zeit berechnen, aber ich weiß nicht, welche Zeit ich als Referenz nehmen muss.Berechnung der Geschwindigkeit in onfling Ereignis

+0

Es könnte gut sein, einen Link zu der Veranstaltung sind Sie als Referenz reproduzieren wollen und teilen Sie uns auch einen Code, um uns zu zeigen, was Sie versucht haben, dann können wir effizienter helfen. – jbehrens94

Antwort

0

während dieser Code für den beabsichtigten Zweck nicht Fir es nicht zeigen, wie man „px/Zeit zu berechnen“

<!DOCTYPE html> 
<html lang="en"> 
<head> 
<title>Fling Me</title> 
<style> 
div{ 
    position:absolute; 
    top:300px; 
    left:300px; 
    width:100px; 
    height:100px; 
    background-color:red; 
} 
</style> 
</head> 
<body> 
republicans must abandon trump or be complicit in his advocacy of assassinating a sitting president 
<div></div> 
<script> 
'use strict'; 
(function(){ 
var mm,ox,oy,el,t,l,tt=0,tl=0,dt=0,dl=0,tmr,s; 
document.querySelector('div').addEventListener('mousedown', 
    function(ev){ 
     el = ev.target; 
     s = el.style ; 
     ox=ev.offsetX; oy=ev.offsetY; 
     t=ev.clientY;l=ev.clientX; 
     tmr = setInterval(function(){  
     dt = tt - t; 
     dl = tl - l; 
     tt = t; 
     tl = l;    
     },30); 
     el.addEventListener('mousemove', 
     mm = function(ev){ 
      t=ev.clientY;l=ev.clientX; 
      s.top = t - ox + 'px'; 
      s.left = l - oy + 'px';    
     } 
    ); 
     el.addEventListener('mouseup', 
     function(ev){ 
      clearInterval(tmr); 
      el.removeEventListener('mousemove',mm); 
      tmr = setInterval(function(){ 
       s.top = parseInt(s.top) - dt + 'px'; 
       s.left = parseInt(s.left) - dl + 'px'; 
      },30); 
      setTimeout("location.assign(location.href)",2000); 
     } 
    ); 
    } 
)})(); 
</script> 
</body> 
</html> 
+0

Hallo, ich verstehe nicht, diesen Teil des Codes: el.addEventListener ('mouseup', Funktion (ev) { clearInterval (TMR); el.removeEventListener ('mousemove-', mm); tmr = setInterval (Funktion() { s.top = parseInt (oben) - dt + 'px'; s.left = parseInt (s.left) - dl + 'px'; }, 30); setTimeout (" location.assign (location.href) ", 2000); } ); Warum stellst du einen anderen Timer nach der Maus ein? – accaacco