javascript - 编辑页面的 <body> 时无法在 Firefox 中单击按钮

标签 javascript firefox firefox-developer-tools

当我使用 Firefox 开发人员工具编辑网页正文时,页面按钮消失或停止运行,如下例所示。这在 Chrome 中不会发生,所有按钮都可以正常工作。 以下是导致问题的步骤:

我转到我需要使用的网页,然后我需要在页面中编辑一些内容,所以我按 Ctrl+Shift+ C 打开开发工具,右击<body>然后 Edit As HTML 并更改我需要更改的内容并应用它,它在 Chrome 上工作得很好,但在 Firefox 和其他浏览器中,按钮停止工作或消失。

这是 link to the example page . (这只是一个示例,不是我正在使用的真实页面,因为真实页面是阿拉伯语,需要更多步骤。)

Two screenshots of the results section of an online code editor. The first screenshot shows a line of text with a 'Click me' button below it. In the second one, labeled 'After edit', both the text and the button are gone.

最佳答案

这是因为 Firefox DevTools 显然与复制外部 HTML 然后执行此操作时的操作相同

document.body.outerHTML = `*copied HTML*`;

在 DevTools 的控制台中。

这就是为什么在您完成 HTML 编辑后所有事件处理程序以及 iframe 内容都消失的原因,例如在这种情况下,您无法编辑左侧的代码,右侧也不再显示输出。

Chrome DevTools 似乎在这里做了一些更智能的事情,并识别出发生了什么变化,并且只在您保存 HTML 时更新那些部分。因此示例页面上的输出之后仍然可见,代码仍然可以编辑。

我已经 filed an enhancement request for that , 因此这种情况下的行为可以得到改善。

关于javascript - 编辑页面的 <body> 时无法在 Firefox 中单击按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45260099/

相关文章:

javascript - 我如何与匿名函数通信

javascript - 无法使用 Visual Studio Code 向 Javascript 中的现有对象添加属性

javascript - 带有 ReactJS 的工具提示 div

javascript - React <a> 标签问题

google-chrome - 为什么 WebGL 渲染速度如此不一致?

javascript - 在 firefox 中使用 js 动态最大高度

javascript - Firefox Developer Edition - 无法在调试器中查看 JavaScript 文件

javascript - Firefox 中的 Vue devtools 未检测到 Vue 3 应用程序

javascript - 如何识别 Firefox 中的 http 请求是谁发起的?

firefox - 开发者工具中的禁用缓存选项不起作用