2012-05-01 6 views
3

J'ai un outil qui génère du code html + javascript, il montre le code dans un div puis affiche un aperçu de ce que le code affiche comme dans un iframe.Exécuter javascript dans un iframe créé dynamiquement

est ici un violon rapide qui montre ce ... http://jsfiddle.net/Zv4zU/

Mais le javascript dans le iframe ne soient jamais même si si vous inspectez le iframe le javascript est sans aucun doute là-dedans. Comment puis-je faire fonctionner le javascript tout seul?

Répondre

1

Voir ce jsfiddle pour une solution!

Edit: Comme Jonathan a souligné, je dois aussi poster le code ici:

var html = "html code <script type='text/javascript'>alert('OK');<\/script>"; 
$("#myFrame").contents().find("body").html(html); 
+2

Veuillez utiliser des violons en guise de complément à votre réponse ici. S'il vous plaît montrer votre solution ici, et un lien vers un violon à des fins de démonstration. De cette façon, si jsfiddle devait même mourir, nous aurions toujours la solution ici. – Sampson

+0

Merci, mais cela semble exécuter le javascript sur le parent, pas sur l'iframe - exemple ici: http://jsfiddle.net/BNG4n/ (le html du div 'test' de la page est montré, pas le iframe ' test 'div, y at-il des correctifs pour cela? – Timm

+0

Je vais demander au-dessus de commentaire comme nouvelle question que vous avez fait répondre à ma question initiale :) – Timm

0

Je suis peu mettre à jour votre script pour démarrer vraiment JS dans le iframe:

var script = "alert('OK');document.body.innerHTML = 'hello!'"; 
myFrame.get(0).contentWindow.eval(script); 

voir jsfeedle

Questions connexes