Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Avatar do usuário
ADMIN
ADMIN
Tópico Autor
Mensagens: 17736
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Como carregar arquivos que tenham JavaScript no código

23-03-2016 22:40

Um problema muito comum é quando tentamos carregar um documento do site usando $.get jQuery, e o arquivo tem chamadas de JavaScript no código-fonte.

Isso faz com que o JavaScript não seja carregado, consequentemente os JavaScript da página puxada não funcionam. Vou dar um exemplo desse problema.

Nesse exemplo eu vou chamar um documento usando o jQuery. O problema é que esse documento chamado tem uma chamada de arquivo js externo e vai fazer com que o script do arquivo chamado não funcione.

principal.html

<script src="jquery.js"></script> <script> $(function() { $("#chamada1").click(function() { $.get("teste.html", function( data ) { $("#conteudo").html(data); }); }); }); </script> <input type="button" value="chamada1" id="chamada1" /> <div id="conteudo"></div>

teste.html

<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>jQuery UI Datepicker - Default functionality</title> <link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css"> <script src="//code.jquery.com/jquery-1.10.2.js"></script> <script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script> <script> $(function() { $( "#datepicker" ).datepicker(); }); </script> </head> <body> <p>Date: <input type="text" id="datepicker"></p> </body> </html>

Ao chamar o arquivo acima não vai funcionar o datapicker, isso por causa das chamadas do js externa.

Para fazer o script funcionar tem que fazer as chamadas js externas dentro da página principal. Como mostrado no exemplo a seguir:

principal.html

<script src="jquery.js"></script> <script> $(function() { $.getScript("http://code.jquery.com/ui/1.11.4/jquery-ui.js"); $("#chamada1").click(function() { $.get("teste.html", function( data ) { $("#conteudo").html(data); }); }); }); </script> <input type="button" value="chamada1" id="chamada1" /> <div id="conteudo"></div>

teste.html

<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>jQuery UI Datepicker - Default functionality</title> <link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css"> <link rel="stylesheet" href="/resources/demos/style.css"> <script> $(function() { $( "#datepicker" ).datepicker(); }); </script> </head> <body> <p>Date: <input type="text" id="datepicker"></p> </body> </html>

Observe que retirei as chamadas js do arquivo chamado. Já o CSS pode deixar que não tem problema.
0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Bing [Bot]