扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
输入框失去焦点后,你又给它赋予焦点,并且弹出对话框,你再点击取消,输入框又失去焦点,然后它又被赋予焦点.....这就是个死循环,所以这个alert会循环出现。
原平网站建设公司创新互联公司,原平网站设计制作,有大型网站制作公司丰富经验。已为原平上千余家提供企业网站建设服务。企业网站搭建\外贸营销网站建设要多少钱,请找那个售后服务好的原平做网站的公司定做!
DIV获取焦点有两种方法:
DIV直接使用focus()和blur()两个方法是无效的,需添加tabindex="0contenteditable="true"属性,设置div为可编辑状态,则可点击获取焦点,同时div的内容也是可以编辑的,
设置div的tabindex,此时div的内容是不可编辑的。
PS:设置tabindex属性,按键盘Tab键可让其获取焦点,其中tabindex的值越小在tab键切换的时候就会首先聚焦
在可编辑的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");
});
你要插入图片的话,要不要记录光标所在的位置?
javascript通过 onFocus onBlur来判断焦点和失去焦点
input type="text" id="p" onBlur="alert('lose focus!')"
onFocus="alert('get focus')" /
jquery $("#p").blur(); $("#p").blur(fn)
或$("#p").focus(); 或$("#p").focus(fn)来处理焦点事件
前者:$("#p").blur();$("#p").focus(); 用来强制获取或失去焦点
后者:$("#p").blur(fn),$("#p").focus(fn)则类似js的onBlur和onFocus用以处理焦点移出和获取时事件处理!
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流