MediaWiki/Hacking interfaccia: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
fix
Ramac (discussione | contributi)
collegare gli eventi
Riga 148:
</source>
Ovviamente non è possibile inserire solo link; è possibile anche inserire moduli ad esempio per creare un box di ricerca personalizzato, o qualsiasi altro elemento XHTML.
</source>
 
=== Aggiungere eventi agli oggetti della pagina ===
Per motivi di sicurezza e di comodità, è impossibile aggiungere script JavaScript all'interno delle pagine wiki tramite l'uso del tag &lt;script&gt; o gli eventi associati agli oggetti (utilizzando ad esempio gli attributi <code>onclick</code> o <code>onmousemove</code>. L'unico modo per poter aggiungere questi ''hook'' è tramite gli script personali o di sistema:
<source lang=javascript>
//per comodità definiamo una funzione
//la useremo per gestire l'evento click
function link_onclick () {
alert("Hai cliccato sul pulsante");
return false;
}
addOnloadHook ( function (){
var link = document.getElementById('l-javascript'); //accediamo all'elemento creato prima
if (link) { //se la variabile contiene Null il link non esiste e non viene eseguito questo codice
link.onLoad = link_onclick; //si noti che non sono messe le parentesi
//questo perché vogliamo ottenere un riferimento alla funzione
//e non il valore che questa restituisce
}
}
);
</source>
In generale, per collegare un evento ad un oggetto della pagina, è sufficiente accedervi tramite il DOM e poi impostare correttamente la proprietà relativa all'evento da collegare.
{{avanzamento|75%}}
[[Categoria:MediaWiki|Hacking interfaccia]]