jquery一个div怎么获得焦点和失去焦点

jquery一个div怎么获得焦点和失去焦点,第1张

DIV获取焦点(两种方法):

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键切换的时候就会首先聚焦

更简洁的写法是

$('.box').click(function(){

$('<input type="text"/>').appendTo('.box').focus()

})

.html()是js的方法,如果习惯了使用jq,就放弃这个方法吧

在可编辑的DIV里,加上blur事件,就是当失去焦点时,获取失去焦点的DIV的ID,然后保存到全局变量里,这样你在做添加图片时,可以直接读取这个全局变量来获取最后是哪个DIV失去了焦点。

用jquery的话,一句代码就能为所有的DIV添加上失去焦点事件:

$("div").on("blur",function(){

    var id=$(this).prop("id")

})

上面是为所有的DIV绑定了事件,但你可以在实际中,根据自己的需要来“缩小范围”,比如你要监听的只是其中包含“edit”样式的DIV,改成:

$("div.edit").on("blur",function(){

    var id=$(this).prop("id")

})

你要插入图片的话,要不要记录光标所在的位置?


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11400263.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-15
下一篇2023-05-15

发表评论

登录后才能评论

评论列表(0条)

    保存