js簡單實現(xiàn)點擊左右運動的方法
本文實例講述了js簡單實現(xiàn)點擊左右運動的方法。分享給大家供大家參考。具體分析如下:
這里可實現(xiàn)點擊向右,方塊向右移動,點擊向左,方塊向左移動的效果
可以用setInterval來實現(xiàn)過多長時間,div移動多長的距離來實現(xiàn)運動效果。
要點一:如果元素的左邊距離小于目標距離,則是正向移動,否則是負向移動
if(run.offsetLeft <target){
speed = 2;
}else{
speed = -2;
}
要點二:如果元素的左邊距離等于目標距離,停止定時器,否則,元素的左邊距離等于現(xiàn)在的左邊距離加上速度值。
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程序設(shè)計有所幫助。
相關(guān)文章
詳解JavaScript時間處理之幾個月前或幾個月后的指定日期
本篇文章主要介紹了JavaScript時間處理之幾個月前或幾個月后的指定日期 ,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2016-12-12
淺談JavaScript 數(shù)據(jù)屬性和訪問器屬性
下面小編就為大家?guī)硪黄獪\談JavaScript 數(shù)據(jù)屬性和訪問器屬性。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-09-09
JavaScript通過prototype給對象定義屬性用法實例
這篇文章主要介紹了JavaScript通過prototype給對象定義屬性用法,實例分析了prototype的功能及使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-03-03

