
div是没有focus和blur事件的,可以focus可以使用click代替,blur事件可以当click响应时监控一下click事件,如果点击不是这个div就响应blur要执行的事件
首先我要说你的事件注册的不对,应该这样写:
$("#two")focus();
$("div")keydown(function(e){
if(ekeyCode == 13){
alert($(this)html());
}
});
其次,div默认是不能focus的,所以你的焦点就没进去。
如果你实在是要实现div的focus,并且按回车显示内容的话,我有一个办法能达到你的效果。
把三个div换成这样:
<div id="one" contenteditable="true">oooo</div>
<div id="two" contenteditable="true">tttt</div>
<div id="three" contenteditable="true">hhhh</div>
不管IE还是火狐都能达到你的效果。
判断键盘是否按下有点儿困难,可以判断并获取有焦点的元素\x0d\//判断是否有元素获得焦点\x0d\if($(':focus')length==0) {\x0d\alert("暂无获得焦点的元素");\x0d\}\x0d\\x0d\else{\x0d\//d出焦点元素的name\x0d\alert($(':focus')attr("name"));\x0d\\x0d\}
更简洁的写法是
$('box')click(function(){
$('<input type="text"/>')appendTo('box')focus();
});
html()是js的方法,如果习惯了使用jq,就放弃这个方法吧
以上就是关于jquery一个div怎么获得焦点和失去焦点全部的内容,包括:jquery一个div怎么获得焦点和失去焦点、jquery设置焦点并触发事件、javascript jquery判断当前页面中是否有获得焦点正在输入的元素等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)