Bookmarklet: execute o comando JS após a página ser carregada

4

Eu construo um monte de bookmarklets para automatizar o trabalho de todos os dias. Agora eu enfrentei um problema: eu gostaria (clicando em um bookmarklet) para abrir uma página no navegador da web (eu uso o Internet Explorer 8) e aplicar alguma operação específica em sua interface.

O aplicativo da Web é antigo e não fornece algumas opções avançadas, como a filtragem de tabelas. Eu tenho essa funcionalidade já escrita, agora eu gostaria de abrir um aplicativo da web e aplicar meu código JS em um clique no bookmarklet.

Por isso, gostaria de fazer três etapas com um clique:

  1. Abra uma página da Web.
  2. Aguarde até que a página da Web seja totalmente carregada.
  3. Executar algum comando JS, digamos alert('test');

Eu tentei algumas vezes, mas parece impossível para mim. Então, eu gostaria de ter certeza: é possível?

    
por boleslaw.smialy 10.01.2014 / 11:31

1 resposta

1

I have this functionality already written, now I would like to open a web app and apply my JS code by one click on bookmarklet.

Use um script remoto por meio de window.open e window.opener :

  /* Web App */
  <script>
  window.open('remote.html')
  </script>

  /* remote.html */
  <script>
  window.opener.onload = function(){}
  </script>

Adicione a tag de script ao Web App por meio do bookmarklet e faça o resto.

Referências

  • Trabalhando com o Windows: fazendo referência ao Opener

  • Pai < = > Conexão bidirecional da janela secundária

por 22.05.2015 / 00:15