【问题标题】:Which javascript events can trigger a popup without being blocked?哪些 javascript 事件可以触发弹出而不被阻止?
【发布时间】:2019-05-09 03:06:59
【问题描述】:

我想在用户在搜索框中按 Enter 键时触发一个弹出对话框,以便他们在搜索前提供更多详细信息。当然,当他们单击搜索按钮时,这可以正常工作。当我尝试使用按键处理程序在用户按下回车键时触发弹出窗口时,弹出窗口往往会被阻止。

哪些 Javascript 事件可以安全地触发弹出窗口? onclick 是唯一的一个还是有一个关键的处理事件(或者我没有想到的其他方式)?

这是一个例子:

$('input.search').keypress(function(event){
    if (event.keyCode == 13) {
        // trigger popup
    }
});

这确实会触发弹出窗口,但弹出窗口拦截器会在大多数情况下捕获它。

【问题讨论】:

  • 你能展示一下你现在在做什么吗?
  • 您可以将任何事件处理程序绑定到任何事件。没有限制。您可以使用任何事件来触发弹出窗口。

标签: javascript browser dom-events


【解决方案1】:

如今的弹出窗口阻止程序倾向于阻止所有内容,但直接鼠标操作除外。也许您应该考虑使用 ajax 来加载预览而不是弹出窗口,然后将 ajax 结果覆盖在页面上。

【讨论】:

  • 这可能是最好的,但弹出窗口是由我正在使用的 Facebook Connect 库触发的,所以没有太多使用弹出窗口的方法。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-04-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多