谁能清楚的讲一下JavaScript的事件机制怎么理解 实现用键盘的上下左右去控制图片的移动

看我这段代码有什么问题,为什么按着上下左右键图片没反应?... 看我这段代码有什么问题,为什么按着上下左右键图片没反应? 展开
 我来答
xiii130
2015-05-25 · 知道合伙人软件行家
xiii130
知道合伙人软件行家
采纳数:817 获赞数:2867
爱好编程,在工作中积累了比较丰富的经验。愿与大家共同进步。

向TA提问 私信TA
展开全部

javascript【事件驱动】机制


所【谓事件驱动】就是对浏览器事件做出响应


简单讲,就是发生了什么事,再对发生了的这件事做出回应


例如

我用javascript监听了keydown事件,为这个事件写了一个回应函数,那么当keydown事件发生后,javascript就会执行你的回应函数,作为对这个事件的【回应】


继续说你的需求,那么写出来代码差不多是这个样子


<style>
img {
    width:40px;
    height:40px;
    position:absolute;
}
</style>
<img src="1.jpg" id="i" style="left:0px;top:0px">
<script>
var t = document.getElementById('i');
t.left = 0;
t.top = 0;
document.onkeydown = move;
document.onkeyup = move;
function move(e){
    var k = e.keyCode || e.which;
    switch(k){
        case 37:
            t.left = t.left;
        break;
        case 38:
            t.top = t.top - 10;
        break;
        case 39:
            t.left = t.left + 10;
        break;
        case 40:
            t.top = t.top + 10;
        break;
    }
    return t.style.left = t.left + 'px', t.style.top = t.top + 'px';
}
</script>
VincentTest
2015-05-25 · TA获得超过274个赞
知道小有建树答主
回答量:623
采纳率:0%
帮助的人:119万
展开全部
document.onkeydown=function(e){
//上下左右是38,40 , 37 ,39
e.keyCode分别等于38 40 37 39去作控制

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hgksjkkjsk
2015-05-24
知道答主
回答量:42
采纳率:0%
帮助的人:9万
展开全部
wwwdddddddddddddddddddddddddddddddddddddd
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式