Tag: window.open

为什么不推荐使用window.showModalDialog? 用什么来代替?

我正在开发一个使用window.showModalDialog的GreaseMonkey脚本。 但在完成之前,我发现Firefox 29警告说: 不build议使用window.showModalDialog()。 使用window.open()来代替。 更多帮助https://developer.mozilla.org/en-US/docs/Web/API/Window.open 但问题是, window.open需要UniversalBrowserWrite特权,以打开一个模式窗口使用window.open 。 那么,为什么不推荐使用window.showModalDialog ? 有什么API不需要特权? 注 :我不想要一个假的模式对话框(如jQuery的),我需要一个真正的模式,暂停JavaScript的执行。

Chrome,Javascript,window.open在新标签

在chrome中打开一个新选项卡: <button onclick="window.open('newpage.html', '_blank')" /> 这在一个新的窗口中打开(但是我想这也打开一个新的标签: <script language="javascript"> window.open('newpage.html', '_blank'); </script> 这可行吗?

当jQuery event.preventDefault()被设置时,绕过window.open的popup窗口拦截器

我想在一个超链接的点击事件中有条件地显示一个JQuery对话框。 我有一个像在condition1上打开一个JQuery对话的要求,如果不满足条件1,导航到页面,其引发点击事件的'href'标记。 我可以在链接的点击事件上调用一个函数。 此函数现在通过执行另一个URL(执行我的Spring控制器并返回响应)来检查所述条件。 所有的作品完美,只有window.open被popup式窗口拦截器阻止。 $('a[href*=/viewpage?number]').live('click', function(e) { e.preventDefault(); redirectionURL = this.href; pageId= getUrlVars(redirectionURL)["number"]; $.getJSON("redirect/" + pageId, {}, function(status) { if (status == null) { alert("Error in verifying the status."); } else if(!status) { $("#agreement").dialog("open"); } else { window.open(redirectionURL); } }); }); 如果我删除e.preventDefault(); 从代码,popoup阻止不会阻止页面,但是,条件1然后打开对话,以及打开“href”页面。 如果我解决了这个问题,就会给另一个问题造成问 我无法同时对这两种情况给予正义。 你能帮我解决这个问题吗? 一旦解决了这个问题,我还有另外一个问题需要解决,即导航对话的OK事件:)