首頁  >  文章  >  web前端  >  js簡單實作點擊左右運動的方法_javascript技巧

js簡單實作點擊左右運動的方法_javascript技巧

WBOY
WBOY原創
2016-05-16 16:05:041234瀏覽

本文實例講述了js簡單實現點擊左右運動的方法。分享給大家供大家參考。具體分析如下:

這裡可實現點擊向右,方塊向右移動,點選向左,方塊向左移動的效果

可以用setInterval來實現太多長時間,div移動多長的距離來達到運動效果。

要點一:如果元素的左邊距離小於目標距離,則是正向移動,否則是負向移動

if(run.offsetLeft <target){
speed = 2;
}else{
speed = -2;
}

要點二:如果元素的左邊距離等於目標距離,停止定時器,否則,元素的左邊距離等於現在的左邊距離加上速度值。

if(run.offsetLeft ==target){
clearInterval(timer);
}
else{
run.style.left = run.offsetLeft +speed +"px";
}

上碼

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>无标题文档</title>
<style>
body{margin:0; padding:0;}
#run{width:100px; height:100px; background:#06c;
position:absolute; border:1px solid #000;
left:0;}
</style>
<script>
window.onload = function(){
 var run = document.getElementById("run");
 var btn = document.getElementById("btn");
 var btn1 = document.getElementById("btn1");
 var speed = 2;
 var timer = null;
 btn.onclick = function(){
  startrun(300);
 }
 btn1.onclick = function(){
  startrun(0);
 }
 function startrun(target){
   clearInterval(timer);
  timer = setInterval(function(){
   if(run.offsetLeft <target){
    speed = 2;
   }else{
    speed = -2;
   }
   if(run.offsetLeft ==target){
    clearInterval(timer);
   }
   else{
    run.style.left = run.offsetLeft +speed +"px";
   }
  },30)
 }
}
</script>
</head>
<body>
<input id="btn" type="button" value="运动向右">
<input id="btn1" type="button" value="运动向左">
<div id="run"></div>
</body>
</html>

希望本文所述對大家的javascript程式設計有所幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn