DIV直接使用focus()和blur()两个方法是无效的,需添加tabindex="0"或者contenteditable="true"属性
①:设置div为可编辑状态,则可点击获取焦点,同时div的内容也是可以编辑的;如:
<div contenteditable="true">11111111111111</div>
②:设置div的tabindex,此时div的内容是不可编辑的;如:
<div tabindex="0">11111111111111</div>
PS:设置tabindex属性,按键盘Tab键可让其获取焦点,其中tabindex的值越小在tab键切换的时候就会首先聚焦
首先我要说你的事件注册的不对,应该这样写:$("#two").focus()
$("div").keydown(function(e){
if(e.keyCode == 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还是火狐都能达到你的效果。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)