Eu gostaria de alterar o contexto do javascript executado na ferramenta de desenvolvedor webkit / console do firebug para executar seu código como se estivesse sendo executado de dentro de um iframe na página.
Sei que poderia fazer isso abrindo a página no iframe em uma página separada, mas quero executar o código onde ele interage com o quadro pai.
javascript
iframe
console
firebug
Muhd
fonte
fonte
window.frames[x]
moda. Basta anexar o comando que desejar. IEwindow.frames[0].runFunction()
Respostas:
O Chrome 15 permite que você altere o escopo do console. Na parte inferior do console, ao lado do botão limpar console, há um menu que diz
<top frame>
que fornecerá uma lista de frames disponíveis:O Firefox tem um recurso semelhante atualmente em desenvolvimento:
Você também pode navegar pelos frames usando a linha de comando :
fonte
Você pode executar código em
<iframe>
s usando awindow.frames[x]
funcionalidade. Por exemplo,fonte
window.frames[0].alert()
No Chrome de hoje (versão 52), tudo que você precisa fazer é selecionar o iframe na guia "Elementos" das ferramentas de desenvolvimento. Tudo o que você executar no console JS será executado automaticamente no contexto do iframe selecionado.
Por exemplo, aqui selecionei um iframe e, quando digito
document.location.pathname
no console, ele retorna o atributo src do iframe, em vez do URL da barra de endereço:fonte
Para a solução do firebug, veja esta resposta em outra pergunta do SO. Porém, não funciona entre domínios como a solução de Dennis para Chrome.
Edit: Com versões mais recentes do firebug, eles podem ter corrigido o problema entre domínios.
fonte
A execução de instruções de script e comandos por padrão é feita no contexto da janela de nível superior. Se você estiver usando quadros, use o comando de console "cd ()".
cd () Chamar cd () sem parâmetros retorna à janela de nível superior.
cd (janela) Permite que você altere a avaliação da expressão de linha de comando da janela de nível superior padrão da página da web para a janela de um quadro.
Mais informações aqui
fonte
fonte