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

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

内容简介:工作?从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 .


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

查看所有标签

猜你喜欢:

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

Web界面设计

Web界面设计

Bill Scott、Theresa Neil / 李松峰 / 电子工业出版社 / 2015-3 / 108.00

当前的Web已经进入崭新的时代!《Web界面设计》涵盖了在基于独一无二的Web环境下、在创建丰富体验的过程中设计Web界面的最佳实践、模式和原理。UI专家Bill Scott和Theresa Neil在他们多年实践经验和不懈探索的基础上,总结提炼出了Web界面设 计的六大原理——直截了当、简化交互、足不出户、提供邀请、巧用变换和即时反应,并以这六大原理为依托,以当今Web上各类开风气之先的流行网站......一起来看看 《Web界面设计》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

SHA 加密
SHA 加密

SHA 加密工具