在线等。。。。

kk297173176 2011-05-20 10:09:10
当按下一个键(假入是a)执行一件事情、在按下一个键(假如是d)同样执行件事情。。
我用的setTimeout,可是还是不行,我按下a他就执行a的事件,可我一按下b、b的事件执行了,可是a的却停止了。。。。我想让它们互不影响。。。

求解。。。
...全文
176 25 打赏 收藏 转发到动态 举报
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
cddhy 2011-05-20
  • 打赏
  • 举报
回复
不知道你用过jquery吗,
用jquery很容易做到。
我可以给你用jquery做的代码
rao3324180 2011-05-20
  • 打赏
  • 举报
回复
是不是要clearTimeout?
love1901 2011-05-20
  • 打赏
  • 举报
回复
按b的时候,a松开了,当然a就停下了啊
汉尼拔 2011-05-20
  • 打赏
  • 举报
回复
试了下,解决不了,等高手吧
汉尼拔 2011-05-20
  • 打赏
  • 举报
回复
看你的代码只要在ie下就可以了?
kk297173176 2011-05-20
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 shuixiya1999 的回复:]
on来做即 2级dom事件
[/Quote]

能说详细点么,这是第一次这样做
汉尼拔 2011-05-20
  • 打赏
  • 举报
回复
on来做即 2级dom事件
kk297173176 2011-05-20
  • 打赏
  • 举报
回复
<div style="width:15px; height:8px; background-color:Black; position:absolute; top:10px; left:10px;" id="zd">

</div>
<div style="width:15px; height:8px; background-color:red; position:absolute; top:100px; left:10px;" id="zd1">

</div>

document.body.onkeypress=function(){
var kd=event.keyCode;
if(你按下了a){第一个div向左边移动(如果松开,就停止移动)};
if(。。。。b){。二。。。。。。。。};

}
我想按同时让两个div都移动,结果是,一按a,就把b停了,一按b,就把a给停了。。。。


cb1156 2011-05-20
  • 打赏
  • 举报
回复
每次执行 new 一下就可以了
zell419 2011-05-20
  • 打赏
  • 举报
回复
判断下按下的是a还是b不就行了 ?
该什么的做什么 ~
看下你的代码 。
kk297173176 2011-05-20
  • 打赏
  • 举报
回复
搞定了 就是#21的,你太牛X了。。。。。

while(true)
{
感谢!!!;
}
kk297173176 2011-05-20
  • 打赏
  • 举报
回复
[Quote=引用 22 楼 cddhy 的回复:]
引用 20 楼 kk297173176 的回复:

引用 19 楼 cddhy 的回复:
引用 17 楼 kk297173176 的回复:

引用 16 楼 cddhy 的回复:
我也是新手,有什么不合理的地方你说。共同探讨下。
也不知道符不符合你的要求。


我想要的是按a只有第一个移动,按b只有第二个移动。且二者不相互影响。

好吧,这句话貌似和你最上面的要求矛盾。
……
[/Quote]

en
hyc0204 2011-05-20
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 danica7773 的回复:]

俺这个就是按那个走那个,互不影响了。。。

不过乱写的,只在FF下试了一下。。。

上班中,要低调!

HTML code

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html x……
[/Quote]试了下,不错。挺好玩的!
cddhy 2011-05-20
  • 打赏
  • 举报
回复
[Quote=引用 20 楼 kk297173176 的回复:]

引用 19 楼 cddhy 的回复:
引用 17 楼 kk297173176 的回复:

引用 16 楼 cddhy 的回复:
我也是新手,有什么不合理的地方你说。共同探讨下。
也不知道符不符合你的要求。


我想要的是按a只有第一个移动,按b只有第二个移动。且二者不相互影响。

好吧,这句话貌似和你最上面的要求矛盾。
下面的符合你这次要求了。
还是不清楚如果同时按你的要……
[/Quote]

我想问你下,你加载这个js包了吗?
jquery.hotkeys.js
打字员 2011-05-20
  • 打赏
  • 举报
回复
俺这个就是按那个走那个,互不影响了。。。

不过乱写的,只在FF下试了一下。。。

上班中,要低调!


<!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>
<script type="text/javascript" src="jquery.js"></script>
</head>
<body>
<div id='a' style="position:absolute;left:10px;top:10px;width:200px;height:120px;background:#f0f">0</div>
<div id='b' style="position:absolute;left:100px;top:200px;width:200px;height:120px;background:#0ff">0</div>
<script type="text/javascript">
$(document).ready(function() {
var alist = {};
var atimer = null;
$(document).keydown(function(e) {
action(e.keyCode, 'move');

}).keyup(function(e) {
action(e.keyCode, 'stop');
});

function action(k, act) {
if(k == 65 || k == 66) {
if(act == 'move') {
alist[k] = k == 65? '#a' : '#b';
if(!atimer) {
atimer = setInterval(function() {
$.each(alist, function(i, v) {
if(v) {
$(v).css('left', ($(v).position().left + 10));
}
});
}, 20);
}
} else {
alist[k] = null;
if($.isEmptyObject(alist)) {
clearInterval(atimer);
atimer = null;
}
}
}
}
});
</script>
</body>
</html>
kk297173176 2011-05-20
  • 打赏
  • 举报
回复
[Quote=引用 19 楼 cddhy 的回复:]
引用 17 楼 kk297173176 的回复:

引用 16 楼 cddhy 的回复:
我也是新手,有什么不合理的地方你说。共同探讨下。
也不知道符不符合你的要求。


我想要的是按a只有第一个移动,按b只有第二个移动。且二者不相互影响。

好吧,这句话貌似和你最上面的要求矛盾。
下面的符合你这次要求了。
还是不清楚如果同时按你的要求是什么

JScript code
……
[/Quote]

我用的是ie8,jq1.3.2。。我按下那个键都会移动。。。。。
cddhy 2011-05-20
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 kk297173176 的回复:]

引用 16 楼 cddhy 的回复:
我也是新手,有什么不合理的地方你说。共同探讨下。
也不知道符不符合你的要求。


我想要的是按a只有第一个移动,按b只有第二个移动。且二者不相互影响。
[/Quote]
好吧,这句话貌似和你最上面的要求矛盾。
下面的符合你这次要求了。
还是不清楚如果同时按你的要求是什么

$(function(){
var move={
a:function(){
$("#zd").animate({left:"+=1px"},15);
},
b: function(){
$("#zd1").animate({left:"+=1px"},15);
}
};


jQuery(document).bind('keydown', 'a',function (evt){
move.a();
}).bind('keydown', 'b',function (evt){
move.b();
});
});
kk297173176 2011-05-20
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 cddhy 的回复:]
我也是新手,有什么不合理的地方你说。共同探讨下。
也不知道符不符合你的要求。
[/Quote]

你这个按下a后两个都在移动,不过谢了!
kk297173176 2011-05-20
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 cddhy 的回复:]
我也是新手,有什么不合理的地方你说。共同探讨下。
也不知道符不符合你的要求。
[/Quote]

我想要的是按a只有第一个移动,按b只有第二个移动。且二者不相互影响。
cddhy 2011-05-20
  • 打赏
  • 举报
回复
我也是新手,有什么不合理的地方你说。共同探讨下。
也不知道符不符合你的要求。
加载更多回复(5)

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧