jQuery焦点有时最终会使闪烁的文本光标消失

时间:2010-05-28 04:18:09

标签: jquery html input cursor

任何人都知道为什么.focus()会让光标消失,但是当你点击文字输入框时它会回来?

1 个答案:

答案 0 :(得分:0)

.focus()无法确定光标位置,例如当你在元素上触发focus事件时,光标应该是 的位置?这取决于你click的位置,这是一个完全不同的事件。

除此之外,当您.trigger()一个事件(.focus().trigger('focus')的快捷方式)时,它不会像在用户创建事件时那样复制事件。事件,例如默认操作....例如光标位置设置(.click()也不起作用,出于同样的原因)。 The jQuery docs for .trigger()简要介绍了这一点:

  

虽然.trigger()模拟事件激活,但是使用合成的事件对象,它不能完美地复制自然发生的事件。

您可以停止默认操作(使用event.preventDefault()),但jQuery核心中没有用于创建或执行它的机制。