最佳答案
我在一个页面上有一个 div,它显示了一些关于特定类别(图像,名称等)的信息。
当我点击编辑图像,它把类别进入编辑模式,让我更新的名称。正如你可以从下面的图片看到,它显示“汤”目前在编辑模式,其他人在正常的视图模式。取消/保存按钮可以正常工作。(我试图添加一个形象,但不让我,需要更多的爱)
然而 一次在编辑模式下,如果我单击页面上的任何其他地方(在 div 之外) ,预期的结果将是汤类别回到视图模式。在某种类型的事件触发时,这还应该允许我询问他们是否希望保存更改。
所以我决定在“ soups”父 div 上创建一个模糊事件。如果我单击页面上的任何地方,这个工作原理就是正常的,但是如果我单击 div 的内部元素,它也会导致父元素模糊事件被触发,从而导致类别回到查看模式。
那么,如果父 div 的任何一个子 div 接收到焦点,是否有办法防止它触发侠影事件?
<div tabindex="-1" onblur="alert('outer')">
<input type="text" value="Soup" />
</div>
我只是在没有编译器的情况下编写了代码,所以不确定它是否能工作,但是希望你能明白我的意思。
我正在使用 Knockout.js 动态更新 GUI,但这不会影响我从未想过的答案。