Utilisateur:Delhovlyn/testExist.js
Un article de Wikipédia, l'encyclopédie libre.
Note : Après avoir publié la page, vous devrez forcer son rechargement pour voir les changements : Mozilla / Konqueror / Firefox : Shift-Ctrl-R, Internet Explorer / Opera : Ctrl-F5, Safari : Cmd-R.
function makeAJAXRequest(url,paramtitle) { var httpRequest2 = false; if (window.XMLHttpRequest) { // Mozilla, Safari,... httpRequest2 = new XMLHttpRequest(); if (httpRequest2.overrideMimeType) { httpRequest2.overrideMimeType('text/xml'); } } else if (window.ActiveXObject) { // IE try { httpRequest2 = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { httpRequest2 = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } if (!httpRequest2) { alert('Abandon :( Impossible de créer une instance XMLHTTP'); return false; } httpRequest2.onreadystatechange = function() { alertContents(httpRequest2); }; httpRequest2.open('POST', url, true); //httpRequest2.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); httpRequest2.send('action=query&titles=' + paramtitle); } function alertContents(httpRequest2) { if (httpRequest2.readyState == 4) { if (httpRequest2.status == 200) { var docXML = httpRequest2.responseXML; if (docXML.getElementsByTagName('page')[0].missing) { document.textIfExist.style.color='red'; } else { document.textIfExist.style='color:green; font-weight:normal;'; } } } } function construireInput() { var ulToolbox = document.getElementById('p-tb').getElementsByTagName('div')[0]; var codeHTMLToolbox = '<li><input name="textIfExist" title="Cet article n\'existe pas" type="text" style="width:95%; font-size:90%; font-weight:normal; color:grey;" value="Titre d’article" onfocus="if(this.value==\'Titre d’article\'){this.value=\'\';}" onchange="if(this.value!=\'\'){makeAJAXRequest(\'http://fr.wikipedia.org/w/api.php\',this.value);}" onblur="if(this.value==\'\'){this.value=\'Titre d’article\'; this.style=\'color:grey; font-weight:normal;\';}" /></li>'; // ulToolbox.innerHTML = ulToolbox.innerHTML + codeHTMLToolbox; ulToolbox.innerHTML += codeHTMLToolbox; } addOnloadHook(construireInput);