|
|
|
|
SpoonS2K, le samedi 12 juillet 2008 à 13:13:42
function recup() {
var idProgress=document.getElementById("progress_key").value;
var xhr= null;
if(window.XMLHttpRequest)
xhr = new XMLHttpRequest();
else if(window.ActiveXObject)
xhr = new ActiveXObject("Microsoft.XMLHTTP");
else {
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
return;
}
xhr.open("GET","progress.php?progress_key="+idProgress,true);
xhr.send(null);
xhr.onload=maj;
}
function maj() { /*rappel objet xmlHttpRequest */
var repXhr=this.responseText; //récupération de la réponse du serveur via l'objet xmlHttpRequest (this)
if (this.readyState == 4) {
var objRep=eval('('+repXhr+')');
}
document.getElementById("sec").innerHTML=objRep.est_sec+" secondes restantes";
var i = objRep.bytes_uploaded;
var j = objRep.bytes_total;
var percent = Math.ceil(i*100/j);
var pix = percent*300/100;
document.getElementById("p_pc").innerHTML=percent+"%";
document.getElementById("p_barre").style.width=parseInt(pix)+"px";
if (percent!=100) { recup(); }
}
Configuration: Windows XP // Firefox 3.0 - IE7 - Opera 9 - Safari OSX 10.4.11 // Firefox 3.0 - Safari 9 - Camino
Bon je reviens à la charge... J'ai réécris completement mon code, ca marche impec sur Firefox et Opera.
function getstatus() {
var xhr = null;
if(window.XMLHttpRequest) // Firefox
xhr = new XMLHttpRequest();
else if(window.ActiveXObject) // Internet Explorer
xhr = new ActiveXObject("Microsoft.XMLHTTP");
else { // XMLHttpRequest non supporté par le navigateur
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
return;
}
var idProgress = document.getElementById("clef").value;
xhr.open("GET", "progress.php?progress_key="+idProgress, true);
xhr.onreadystatechange = function() {
if(xhr.readyState == 4) {
if(xhr.status == 200) {
var tmp=xhr.responseText;
var reponse=eval('('+tmp+')');
var b_up = reponse.bytes_uploaded;
var b_tot = reponse.bytes_total;
var percent = Math.ceil(b_up*100/b_tot);
var pixel = percent*300/100;
document.getElementById("sec").innerHTML = reponse.est_sec+" secondes restantes";
document.getElementById("p_pc").innerHTML = percent+"%";
document.getElementById("p_barre").style.width=parseInt(pixel)+"px";
document.getElementById('rep').style.display = '';
if (percent!=100) { getstatus(); }
}
}
}
xhr.send(null);
}
Seulement Internet Explorer m'affiche bien les reponses que je veux mais une seule fois... En fait on a l'impression qu'il bloque sur if (percent!=100) { getstatus(); }, il ne réécute pas le script, et IE plante... Quant a Safari ca ne fonctionne pas du tout... Si vous avez une idée du pourquoi du comment, je suis preneur Merci |
| 20/11 13h57 | [Webmaster] Afficher des PNG transparents dans IE 5.5 et IE 6 | Webmaster |
| 28/02 00h02 | [Webmaster] Voir à quoi ressemble votre site ailleurs | Webmaster |
| 17/11 13h26 | [Protection de la vie privée] Confidentialité des données du PC | Protection de la vie privée |
| 06/03 17h15 | [Tutoriels] Tutoriels de logiciels | Logiciels |
| 28/11 11h49 | [Moniteur] Réduire la fatigue visuelle | Moniteur |
| 08/01 15h11 | IE, Firefox, Opera / border et debordement | 11 |
| 07/09 15h21 | Firefox 3 vs ie7 | 12 |
| 09/06 10h55 | Hack css Firefox safari IE6 IE7 | 1 |
| 23/01 22h12 | [son]plus de son sur IE/Firefox/Opera | 2 |
![]() | Firefox - Mozilla Firefox 3 est un excellent navigateur qui peut fonctionner à côté d' Internet Explorer ou le remplacer. Il... | Catégorie: Navigateurs Licence: Open Source |
![]() | Web Developer Toolbar - WebDeveloper est une extension firefox représentant une formidable boîte à outils pour examiner et manipuler les pages... | Catégorie: Extensions Firefox Licence: Freeware/gratuit |
![]() | AM-Deadlink - AM-DeadLink est un outil permettant de détecter les liens morts et les doublons dans les favoris ( bookmarks ) du ... | Catégorie: Web Licence: Freeware/gratuit |
![]() | Opera - Marre des trous de sécurité du navigateur par défaut ? Envie enfin d'avoir un navigateur simple et configurable facilement ?... | Catégorie: Navigateurs Licence: Freeware/gratuit |
![]() | WWE SmackDown! vs. Raw | Catégorie: Jeu vidéo Xbox 360 | 23.49 € PriceMinister |
![]() | WWE SmackDown! vs. Raw | Catégorie: Jeu vidéo PS2 | 20.49 € PriceMinister |
![]() | Altec Lansing VS2420 2.0 | Catégorie: Enceintes PC | 23.70 € Atlanpolis |
![]() | MX Vs. ATV Extreme | Catégorie: Jeu vidéo PS2 | 34.99 € Amazon.fr |