Chargement d'un script dans un iFrame
Bonjour,
J''essaie de charger dynamiquement un script dans un document que j'ai chargé dans un iFrame. Malheureusement, il semble que ça ne fonctionne pas de la façon dont je m'y prends. J'ai créé ici trois petits fichiers qui permettent de recréer le problème, je code en JQuery mais il m'importe peu que la solution implique ou non du code JQuery.
index1.html
Code:
1 2 3 4 5 6 7 8 9 10
| <!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript" src="script.js"></script>
</head>
<body>
<input type="button" value="Bouton #1" onclick="charger_iframe()">
<body>
</html> |
index2.html
Code:
1 2 3 4 5 6 7 8 9
| <!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
</head>
<body>
<input type="button" value="Bouton #2" onclick="faire_le_test()">
<body>
</html> |
script.js
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| function charger_iframe() {
var ifrm = $("<iframe>").attr("src","index2.html");
$(document.body).append(ifrm);
$(ifrm).load(function() {
var context = $("iframe").contents();
var headID = $("HEAD", context);
var newScript = $('<script>');
$(newScript).attr({"type":"text/javascript","src":"script.js"});
$(headID).append(newScript);
alert($(headID).html());
});
}
function faire_le_test() { alert("Ceci est un test"); } |
Quelqu'un peut m'aider à ce que je puisse correctement charger script.js dans index2.html à partir de index1.html afin que je puisse exécuter la fonction faire_le_test()?