Succès!
Essayez ceci. Tous les éléments iframe et de retirer leurs frontières dans IE et d'autres navigateurs (bien que vous pouvez simplement définir un style "border : none;" non-IE navigateurs au lieu de l'utilisation de JavaScript). ET il fonctionnera même si utilisé APRÈS l'iframe est généré et mis en place dans le document (par exemple, les iframes sont ajoutés en HTML et pas en JavaScript)!
Cela semble fonctionner car IE crée la frontière, non pas sur l'élément iframe que vous vous attendez, mais sur le CONTENU de l'iframe, après l'iframe est créé dans la NOMENCLATURE. ($@&*#@!!! IE!!!)
Remarque: La IE partie seulement de travail (bien sûr) si la fenêtre parent et iframe sont de la MÊME origine (même domaine, port, protocole, etc.). Sinon, le script "accès refusé" erreurs dans le IE console d'erreur. Si cela se produit, votre seule option est de mettre en avant qu'il est généré, comme d'autres l'ont noté, ou de l'utilisation de la non-standard frameBorder="0" attribut. (ou tout simplement laisser IE look moche--mon option préférée ;) )
M'a fallu de NOMBREUSES heures de travail, au point de désespérer de trouver cela...
Profitez de. :)
// =========================================================================
// Remove borders on iFrames
if (window.document.getElementsByTagName("iframe"))
{
var iFrameElements = window.document.getElementsByTagName("iframe");
for (var i = 0; i < iFrameElements.length; i++)
{
iFrameElements[i].frameBorder="0"; // For other browsers.
iFrameElements[i].setAttribute("frameBorder", "0"); // For other browsers (just a backup for the above).
iFrameElements[i].contentWindow.document.body.style.border="none"; // For IE.
}
}