我如何在Chrome调试器中“动态”编辑JavaScript代码?它不适合我,所以我没有权限访问源文件。我想编辑代码,看看它们对页面有什么影响,在这种情况下,阻止动画排队一堆次。
当前回答
现在谷歌chrome引入了新功能。通过使用此功能,您可以在chrome浏览器中编辑您的代码。(永久更改代码位置)
按F12—>源标签—(右侧)—>文件系统—在其中请选择您的代码位置。然后chrome浏览器会请求你的许可,之后的代码将下沉与绿色。你可以修改你的代码,它也会反映你的代码位置(这意味着它将永久改变)
谢谢
其他回答
我正在寻找一种方法来更改脚本并调试新脚本。我的方法是:
在要更改和调试的脚本的第一行中设置断点。 重新加载页面,以便击中断点 粘贴新脚本并在其中设置所需的断点 Ctrl+s,页面将刷新,导致第一行中的断点被击中。 F8继续,现在你新粘贴的脚本替换原来的一个,只要没有重定向和重新加载。
你可以在Chrome中使用“Overrides”来保存页面加载之间的javascript更改,即使你没有托管原始源代码。
在开发人员工具> Sources > Overrides下创建一个文件夹 Chrome浏览器会请求访问该文件夹的权限,单击允许 在Sources>Page中编辑文件,然后保存(ctrl-s)。紫色点表示文件保存在本地。
由于这是一个非常流行的关于JS实时编辑的问题,我想指出另一个有用的选项。正如svjacob在他的回答中所描述的:
我意识到我可以在我想动态编辑的代码行之前,在调试器中附加一个断点。由于断点在重新加载页面后仍然存在,所以我可以在断点暂停时编辑我想要的更改,然后继续让页面加载。
上面的解决方案对我来说并不适用于相当大的JS (webpack bundle - 3.21MB缩小版,美化版130k行代码)- chrome崩溃,并要求重新加载页面,恢复任何保存的更改。在这种情况下的方法是Fiddler,你可以设置自动响应选项来替换任何远程资源与任何本地文件从你的计算机-参见这个SO问题的详细信息。
在我的情况下,我还必须添加CORS头提琴成功模拟响应。
如果它的javascript运行在一个按钮点击,然后在Sources>Sources(在chrome开发人员工具中)下进行更改,并按Ctrl +S保存,就足够了。我一直都这么做。
如果你刷新页面,你的javascript更改会消失,但chrome仍然会记住你的断点。
放置断点 右键单击断点并选择“编辑断点” 插入代码。使用SHIFT+ENTER创建新行。
推荐文章
- JavaScript: override alert()
- 重置setTimeout
- 如何确保<select>表单字段被禁用时提交?
- jQuery有不聚焦的方法吗?
- 反应钩子-正确的方式清除超时和间隔
- TypeScript枚举对象数组
- 在React.js中正确的img路径
- 在React.js中更新组件onScroll的样式
- onClick ReactJS调用多个函数
- 如何在JavaScript中转义单引号(')?
- Chrome开发工具:如何找出什么是覆盖CSS规则?
- Ng-repeat结束事件
- 谷歌MAP API未捕获的类型错误:无法读取属性“offsetWidth”为空
- 模糊vs聚焦-有什么真正的区别吗?
- 如何使用JavaScript创建和样式一个div ?