以下帖子与我之前提出的问题相关here.
尽管这两个问题是独立的,但它们确实与我实现的相同功能相关 - 预测文本。
我遇到的问题与这两个事件的方式有关onblur
and onclick
叫做。
当用户在文本框中输入一些字符并决定单击建议而不是完成输入整个单词后,就会发生这种情况。
我有一个onlick
每个建议都附有处理程序。
不过,我也有一个onblur
处理程序附加到我的文本框。
问题是onblur
处理程序应该关闭建议框并销毁其内容。
The onlick
处理程序需要内容才能复制单击的 div 的值并将其复制到文本框中。
因此,陷入了困境。如果任何东西已经被破坏了,我就无法复制它onblur
处理程序。
我如何捕获一个onblur
事件,同时还要弄清楚是否onblur
是由用户“点击”其中一项建议触发的吗?
希望我的问题有意义。
我尝试了许多不同的方法,包括将我的文本输入字段和自动填充 div 包装在父 div 中,并在父 div 上设置 onblur - 但没有任何效果。显然你不能在 div 上分配 onblur 事件(因为它一开始就无法获得焦点)。
答案是设置一个超时onblur
正如赛斯所建议的那样。
onblur="setTimeout(function() {closeSuggestionBox();}, 100);"
我在一个帖子上找到了对此的很好解释here.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)