代码之家  ›  专栏  ›  技术社区  ›  Student

如何使onFocus一次发生?

  •  0
  • Student  · 技术社区  · 16 年前

    如何使onFocus只发生一次(不像现在那样用对话框阻塞窗口)?

    <html>
        <form name="myForm">
          <input type="button"
                 value="Big Button"
                 name="myButton"
                 onFocus="alert('Focus event occured')">
        </form>
        </html>
    

    更新:

    对不起,当我说“一次”时,我指的是每次它接收焦点时的一次。目前只有一个焦点,它显示无限的对话。

    1 回复  |  直到 16 年前
        1
  •  1
  •   Stephen P    16 年前

    这是有问题的。当输入字段获得焦点时,就会触发焦点事件,您可以通过设置警报框来处理该事件 这会分散注意力 (一个“模糊”事件)。当警报解除时,输入字段 再次获得焦点

    不要 希望在焦点处理程序中执行这样的操作来更改焦点,除非是“当这个控件获得焦点时,将焦点发送到另一个控件”。

    如果您做了一些不会引起焦点改变的事情(警报会这样做),例如向 div 当你集中注意力时,你会发现事件只会发生一次。

    如果你描述了你真正想要达到的目标,你可能会得到更好的建议。我想警报只是个测试。