js簡(jiǎn)單實(shí)現(xiàn)點(diǎn)擊左右運(yùn)動(dòng)的方法
本文實(shí)例講述了js簡(jiǎn)單實(shí)現(xiàn)點(diǎn)擊左右運(yùn)動(dòng)的方法。分享給大家供大家參考。具體分析如下:
這里可實(shí)現(xiàn)點(diǎn)擊向右,方塊向右移動(dòng),點(diǎn)擊向左,方塊向左移動(dòng)的效果
可以用setInterval來(lái)實(shí)現(xiàn)過(guò)多長(zhǎng)時(shí)間,div移動(dòng)多長(zhǎng)的距離來(lái)實(shí)現(xiàn)運(yùn)動(dòng)效果。
要點(diǎn)一:如果元素的左邊距離小于目標(biāo)距離,則是正向移動(dòng),否則是負(fù)向移動(dòng)
if(run.offsetLeft <target){
speed = 2;
}else{
speed = -2;
}
要點(diǎn)二:如果元素的左邊距離等于目標(biāo)距離,停止定時(shí)器,否則,元素的左邊距離等于現(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>無(wú)標(biāo)題文檔</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="運(yùn)動(dòng)向右">
<input id="btn1" type="button" value="運(yùn)動(dòng)向左">
<div id="run"></div>
</body>
</html>
希望本文所述對(duì)大家的javascript程序設(shè)計(jì)有所幫助。
- JS實(shí)現(xiàn)多物體運(yùn)動(dòng)的方法詳解
- JS運(yùn)動(dòng)改變單物體透明度的方法分析
- JS小球拋物線軌跡運(yùn)動(dòng)的兩種實(shí)現(xiàn)方法詳解
- 原生JS實(shí)現(xiàn)圖片無(wú)縫滾動(dòng)方法(附帶封裝的運(yùn)動(dòng)框架)
- 原生js封裝運(yùn)動(dòng)框架的示例講解
- javascript 緩沖運(yùn)動(dòng)框架的實(shí)現(xiàn)
- JS實(shí)現(xiàn)勻加速與勻減速運(yùn)動(dòng)的方法示例
- Js實(shí)現(xiàn)簡(jiǎn)單的小球運(yùn)動(dòng)特效
- JS實(shí)現(xiàn)勻速運(yùn)動(dòng)的代碼實(shí)例
- js實(shí)現(xiàn)緩沖運(yùn)動(dòng)效果的方法
- JS運(yùn)動(dòng)特效之任意值添加運(yùn)動(dòng)的方法分析
相關(guān)文章
詳解JavaScript時(shí)間處理之幾個(gè)月前或幾個(gè)月后的指定日期
本篇文章主要介紹了JavaScript時(shí)間處理之幾個(gè)月前或幾個(gè)月后的指定日期 ,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2016-12-12
JS+CSS相對(duì)定位實(shí)現(xiàn)的下拉菜單
這篇文章主要介紹了JS+CSS相對(duì)定位實(shí)現(xiàn)的下拉菜單,涉及JavaScript結(jié)合css的定位技術(shù)實(shí)現(xiàn)下拉菜單的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-10-10
淺談JavaScript 數(shù)據(jù)屬性和訪問(wèn)器屬性
下面小編就為大家?guī)?lái)一篇淺談JavaScript 數(shù)據(jù)屬性和訪問(wèn)器屬性。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-09-09
JavaScript通過(guò)prototype給對(duì)象定義屬性用法實(shí)例
這篇文章主要介紹了JavaScript通過(guò)prototype給對(duì)象定義屬性用法,實(shí)例分析了prototype的功能及使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-03-03
JS鼠標(biāo)滑過(guò)圖片時(shí)切換圖片實(shí)現(xiàn)思路
在瀏覽網(wǎng)頁(yè)時(shí)會(huì)看到這樣的效果:當(dāng)鼠標(biāo)滑過(guò)一張圖片后,這張圖片切換為了另外的一張圖片,下面為大家介紹下具體是如何實(shí)現(xiàn)的,感興趣的朋友不要錯(cuò)過(guò)2013-09-09

