javascript – 模糊事件未触发 – 无法找到处理隐藏模糊文本字段的变通方法

栏目: JavaScript · 发布时间: 7年前

内容简介:工作?从HTML的基本思路:
TL; DR如何让这个 self-explanatory JSFiddle

工作?

the W3C 开始:

The blur event occurs when an element loses focus either via the pointing device or by tabbing navigation. This event is valid for the following elements: LABEL, INPUT, SELECT, TEXTAREA, and BUTTON.

HTML的基本思路:

<form>
    <label>
        <input type="text" />
        <a href="#">after focusing in input, there should be no blur when clicking here</a>
    </label>
</form>
<a href="#">but blur should fire when clicking here</a>

和JS:

$("form, label").on("blur", function() {
    alert("you're not going to see this");
});

它不起作用.更具说明性的例子是在 this JSFiddle .

我也用 this JSFiddle 尝试了焦点,但是(大概是因为它从输入中冒出来),它总是会触发.

我可能用这样的黑客来装备我需要的东西: https://stackoverflow.com/a/5049387/458614 但我宁愿不必.

编辑:有很多相关问题,我已经阅读了所有我能找到的内容,但没有一个有用.有些人谈论在表单或标签元素上设置tabindex = 0.我已经尝试了各种排列,但它没有帮助. JSFiddle here .如果您将其放在表单上,​​当您在表单外单击时,模糊事件会触发.但是,它不适用于它的任何子项:如果单击输入然后单击表单外,它将不会拾取任何内容.

编辑2:我真的不明白到目前为止发布的一些答案,似乎没有真正……工作.无论如何,澄清一下,这是我想要完成的事情:

在我的应用中,您可以为文档添加标签.单击“添加标记”按钮时,会弹出一个先前隐藏的文本输入字段并进行聚焦.然后…

>单击外部(模糊)应再次关闭文本输入字段

>按Enter键应添加标签并关闭输入字段

>单击“添加标记”按钮还应添加标记并关闭输入字段

问题是#1和#3不兼容. “添加标记”按钮需要根据文本字段是打开还是关闭来执行不同的操作,但由于我只能在文本字段上使用onblur事件实现#1,因此文本字段在任何操作时都会关闭发生在#3的“添加标签”按钮上.

这是 JSFiddle with my best attempt so far .


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

解密SEO

解密SEO

欧朝晖 / 电子工业出版社 / 2007-05-01 / 49.80元

《解密SEO:搜索引擎优化与网站成功战略》帮助读者建立搜索营销的概念,分析搜索营销中的几种形式的手段,并从认识搜索引擎的原理开始,导出搜索引擎优化的具体解释,向读者引入以搜索引擎优化为宗旨的网站建设的新观念和设计理念。对网站结构优化、单页优化、链接优化等技术进行了详细的解说和示范。读者还可以接触到网站养育的新概念,帮助读者网站发展成熟,达到网络营销的目标。对搜索引擎优化中观念上和技术上常犯的错误,......一起来看看 《解密SEO》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

SHA 加密
SHA 加密

SHA 加密工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试