Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I cd into an iframe in chrome developer tools or firebug lite in chrome?

when I try cd, console says "cd is not defined"

like image 771
Deepan Chakravarthy Avatar asked Apr 19 '11 05:04

Deepan Chakravarthy


2 Answers

In Chrome Devtools, the "context switcher" is available at the bottom of the page. See the <top frame> dropdown? In there you can change where your script is executing from. This is the same, effectively, as cd().

This is explained more in https://stackoverflow.com/a/8581276/89484

like image 163
Paul Irish Avatar answered Oct 22 '22 03:10

Paul Irish


Yes, you are right Firebug have this awesome command. I really like it. It's making wotking with iframes much easier. Personally I don't go to Firefox just because the cd() is available in it because I can do whatever I can do with cd in chrome dev tools too.

Just use contentWindow keyword in your command prompt to access the iframe window Object. Then you will be good to access any function and variable out there.

For example I have a variable in my iframe that is not accessible via console normally.

But still I can access to the variable via contentWindow like this:

theIfraem.contentWindow.secret;

enter image description here

If you want to fire a function do this:

theIframe.contentWindow.myfunc();

If you want to define some variables(the hardest one):

var script = document.createElement('scrept');
script.innerHTML = "var secret = 'hi'";
theIframe.contentWindow.document.body.appendChild(script);

This is what cd() actually does. I know it's not as good as Firebugs cd(). But the good news is cd() is coming to Chrome

like image 43
Mohsen Avatar answered Oct 22 '22 02:10

Mohsen