C'è solo una parte da personalizzare. Si tratta della
variabile 'domainroot'. Essa andrà impostata inserendo il dominio
del nostro sito. Tutto qui. Il resto dello script può essere
lasciato intatto. (v.esempio a fondo pagina)
Dal momento che genera un form per la ricerca, il codice Javascript
va inserito nel punto della pagina in cui vogliamo farlo apparire.
----------------------------------------
<form name="jksearch" action="http://www.google.com/search"
method="get" onSubmit="jksitesearch(this)">
<p>Cerca su HTML.it:<br />
<input id="hiddenquery" type="hidden" name="q"
/>
<input name="qfront" type="text" style="width:
200px" value="" /> <input type="submit"
value="Search" /><br />
<div>Google:<input name="se" type="radio"
checked> Yahoo:<input name="se" type="radio">
MSN:<input name="se" type="radio">
----------------------------------------
Prima raccomandazione: non modificare gli 'id' e i nomi ('name') dei
singoli campi e del form. Se lo si fa, bisognerà modificare di
conseguenza anche i riferimenti contenuti nella parte Javascript.
Come si vede, la action del form è impostata di default per
svolgere ricerche su Google (risulta già selezionato anche il
radio box corrispondente). Il primo campo è nascosto, di tipo
'hidden': serve alla creazione della query di ricerca sui 3 diversi
motori. Infine, troviamo 3 radio button da cui l'utente potrà
selezionare il motore su cui effettuare la ricerca.
Passiamo alla parte Javascript:
---------------------------------------
<script type="text/javascript">
//Inserire qui il nome del dominio
var domainroot="www.html.it"
var searchaction=[
"http://www.google.com/search",
"http://search.yahoo.com/search",
"http://search.msn.com/results.aspx"
]
var queryfieldname=["q","p","q"]
function switchaction(cur, index){
cur.form.action=searchaction[index]
document.getElementById("hiddenquery").name=queryfieldname[index]
}
function jksitesearch(curobj){
for (i=0; i< document.jksearch.se.length; i++){ //loop through radio
to see which is checked
if (document.jksearch.se[i].checked==true)
switchaction(document.jksearch.se[i], i)
}
document.getElementById("hiddenquery").value="site:"+domainroot+"
"+curobj.qfront.value
}
</script>
-----------------------------------------
|