Pour différer l'affichage d'une bannière de pub en tête de page qui est parfois très lente, je crée un DIV vide avec un ID et ensuite je provoque l'exécution de ma pub dans une DIV bidon en fin de page que j'appelle DUMMY pour récupérer le code HTML et le recopier dans la première DIV. Pour finir je détruis la DIV DUMMY.
Cela marche parfaitement sur FIREFOX mais çà coince avec IE et je ne vois pas bien ou.... Une idée du problème de compatibilité ou d'une autre solution est la bienvenue.
Le code HTML
CODE
<div id="emplacement-pub"></div>
...
<script language="javascript" src=".../script-1.js"></script>
<script language="javascript" src=".../script-2.js"></script>
...
<script language="javascript" src=".../script-1.js"></script>
<script language="javascript" src=".../script-2.js"></script>
Le script 1: son rôle est d'éxécuter la fonction de l'adserver qui génére le code HTML dans la DIV dummy
CODE
document.write('<div id="dummy" style="visibility:hidden;">');
adserver();
document.write('</div>');
adserver();
document.write('</div>');
Le script 2: son rôle est copier le code de la DIV dummy dans la DIV emplacement-pub
CODE
if (document.getElementById('emplacement-pub')) {
var myDiv = document.getElementById('dummy');
document.getElementById('emplacement-pub').innerHTML = myDiv.innerHTML;
myDiv.innerHTML = '';
myDiv.parent.removeChild(myDiv);
}
var myDiv = document.getElementById('dummy');
document.getElementById('emplacement-pub').innerHTML = myDiv.innerHTML;
myDiv.innerHTML = '';
myDiv.parent.removeChild(myDiv);
}