4

假设我想查看一个对象,因此我将其记录到控制台:

console.log(theNoticeObj);

然后使用 Chrome 开发工具,我在控制台中检查它并将其属性 theNoticeObj.bounceHeight 更改为 10px

现在,如果我想立即在该对象上触发 theNoticeObj.bounce() 以找到它,是否有一种简单的方法可以从控制台执行此操作?

谢谢

编辑:

下面建议的断点,但这会冻结执行。

面对我想要的是使用 javascript 对象的命令行 API,而不仅仅是 DOM 元素。如果那是可能的,我相信我能找到它。我可能会去看看是否有针对 chrome 的功能请求。 https://developers.google.com/chrome-developer-tools/docs/console#using_the_command_line_api

4

3 回答 3

3

Try adding window.tno = theNoticeObject under the console.log statement. Reload the page and see if you can execute tno.bounce() from the console. If theNoticeObject is still in scope, this should work.

于 2013-10-18T18:22:57.617 回答
1

您可以导航到Sources选项卡并打开包含您要玩的代码的 javascript 文件,在这种情况下,让我们假设它是

console.log(theNoticeObj);

一旦你找到这一行,你可以在这一点设置一个断点,当你的程序执行到这一行时,它会停止。

然后,您可以使用Console选项卡对当前本地范围、窗口范围内的所有 javascript 对象进行操作。您可以简单地调用:

theNoticeObj.bounce();

它在当前上下文中执行,反映屏幕上的变化。

希望这可以帮助。

于 2013-10-18T18:32:09.743 回答
0

现在您可以右键单击控制台中的任何对象并使用“存储为全局变量”。

将出现一个新的控制台行,其中包含一个新全局变量的名称,该变量持有对选定对象的引用。

于 2020-11-16T02:21:09.413 回答