chrome 撤消“阻止此页面创建其他对话框”的操作
Posted
技术标签:
【中文标题】chrome 撤消“阻止此页面创建其他对话框”的操作【英文标题】:chrome undo the action of "prevent this page from creating additional dialogs" 【发布时间】:2012-06-30 23:15:55 【问题描述】:我有时发现我需要重新启用警报以进行调试。当然我可以关闭标签并重新加载它但是有更好的方法吗?
【问题讨论】:
【参考方案1】:关闭您禁用警报的页面的选项卡。在新选项卡中重新打开页面。该设置仅适用于会话,因此一旦新会话在新标签中开始,警报将重新启用。
【讨论】:
【参考方案2】:没有。但是你真的应该使用console.log()
而不是alert()
进行调试。
在 Chrome 中,它甚至具有能够打印出整个对象的优势(不仅仅是toString()
)。
【讨论】:
警报很有用,因为它们会影响时间。而web检查器console.log语句自省有时会发生在控制台日志隐藏在执行console.log状态时的行之后执行的一堆代码之后。 @BjornTipling 为此,您可以使用debugger
或断点。
您的回答“否”是否意味着没有其他方法可以重新启用警报,或者您认为提问者不应该使用警报?
我知道我的回答并没有直接回答问题的措辞,但它提供了原始发布者正在寻找的信息。至于 Dentaku 的答案,我可以肯定地说这不是正确的答案,因为原始发帖人明确表示他知道该解决方案并正在寻求其他解决方案。
现在是 2017 年,有点晚了,但至于我正在寻找这个信息并找到这个线程,我想添加以下内容:声明 self 是完全正确的,应该使用 console.log
, @987654326 @ 或用于调试的断点。但是问题的答案是错误的。在某些情况下,您实际上想使用 javascript confirm();
之类的东西,当您按下复选框时,将阻止显示对话框。所以问题是:你还能撤销这个甚至阻止这个,因为你想要这个对话框用于你自己的页面(而不是用于烦人的广告)【参考方案3】:
所以正确答案是:是的,有更好的办法。
右键单击选项卡并选择“复制”,然后根据需要关闭原始选项卡。
在副本中重新启用警报。
重复的选项卡似乎重新创建了原始选项卡的运行状态,因此您可以从原来的位置继续。
【讨论】:
仅供参考,如果您中间单击刷新图标,它会复制选项卡。中键单击后退/前进按钮也会在新选项卡中打开它们的页面。很方便。 虽然调试工具很棒,但有时不通过调试器代码直接打印到屏幕上也不错。它很干净。你不必同意,但我同意这个答案。 @RobM 好吧,我会被诅咒的。从来不知道中间点击也可以做到这一点。 根据我的经验,“关闭原始标签如果您愿意”这句话似乎具有误导性,因为在我关闭前一个标签之前,警报不会出现在新标签中。所以必须关闭原始标签。【参考方案4】:2个其他解决方案我没有运气,当没有选项卡关闭+重新打开另一个选项卡中的页面,也不会关闭Chrome(和浏览器)中的所有选项卡,然后重新启动它不起作用:
1) 我通过关闭选项卡、强制关闭 Chrome 并在不恢复选项卡的情况下重新启动浏览器来修复它(注意:在运行 CentOS Linux 的计算机上)。
2) 我的老板(也在 CentOS 上)遇到了同样的问题(警报是我公司 Javascript 调试过程的重要组成部分,原因有很多,例如遗留问题),但我的第一种方法对他不起作用。但是,我设法通过以下过程为他解决了这个问题:
a) 创建一个名为 FixChrome.sh 的空文本文件,然后粘贴以下 bash 脚本:
#! /bin/bash
cd ~/.config/google-chrome/Default //adjust for your Chrome install location
rm Preferences
rm 'Current Session'
rm 'Current Tabs'
rm 'Last Session'
rm 'Last Tabs'
b) 关闭 Chrome,然后打开终端并运行脚本 (bash FixChrome.sh)。
这对他有用。缺点是您会丢失当前和上一个会话中的所有选项卡,但如果这对您很重要,这是值得的。
【讨论】:
【参考方案5】:打开具有相同链接的新窗口或选项卡.. PREVENT 选项仅在每个会话中持续..
【讨论】:
这与 OP 的注释有什么不同,Of course I can close the tab and reload it but Is there a better way?
【参考方案6】:
如果您希望为您设置为阻止对话框显示的页面重新激活对话框。
Chrome:选择设置,将打开一个 chrome 的 google 页面,其中包含您的所有 chrome 设置。
在最底部,转到高级设置,在高级设置的底部,您可以单击重置浏览器设置...这将使对话框按原样显示。
【讨论】:
虽然它确实会重置警报问题,但应谨慎使用,因为它会重置所有设置。无法选择要重置的内容。另外我不相信它比刷新页面更简单 不幸的是,Google 已将此作为答案进行索引……这太糟糕了。不要这样做。【参考方案7】:如果 JS 脚本中有太多警报,似乎有一个进程会抑制所有 console.log 消息。如果您尝试调试脚本,那将是一个问题。我一直在 Chrome 和 Brave 上运行脚本,突然 console.log 消息停止了。然而,对于 Firefox,所有的 console.log 消息仍然出现......完全相同的脚本。问题在于没有选中或取消选中警告、错误和调试消息。
我对此感到不知所措...是Windows阻止了“站点”吗?我尝试清除缓存重置 Chrome 中的所有设置,但问题仍然存在。我想我可以尝试重新安装这两个浏览器。
【讨论】:
【参考方案8】:关闭硬件加速似乎是影响弹出窗口和对话框的设置。
当我需要对某件事做出“是”或“否”响应时,以及当我需要在书签面板中重命名文件夹时,Chrome 会不断隐藏对话框窗口。经过几周的这样做。我在“设置”中禁用了所有 Chrome 助手,此外在 Windows 10 中,我关闭了“窗口捕捉”。它已将弹出窗口和对话框放回视口中。
发生此错误时,我可以先按 Enter 键,然后再单击选项卡关闭 X 按钮来关闭选项卡。浏览器有一个隐藏的警报框,需要用户做出响应。
关闭并重新打开硬件加速,终止 Chrome 进程并关闭和返回所有其他帮助程序已经为我修复了它......它必须在 chrome 本身中,因为我刚刚进入 Mac 中的 Chrome 窗口并且它现在已经停止了这个问题,没有任何干预。我猜想打开/关闭/打开 chrome 设置会导致它重新定位对话框。我现在不能让浏览器重蹈覆辙……
【讨论】:
以上是关于chrome 撤消“阻止此页面创建其他对话框”的操作的主要内容,如果未能解决你的问题,请参考以下文章
在 CoreData 应用程序上摇动撤消工作,但没有显示撤消/重做提示