Newsgroup: it.comp.lang.javascript
Titolo: onClick

Come posso spedire un e-mail con il relativo subject cliccando su
un'immagine con un evento onClick e non con un href ?
                            Grazie a tutti e saluti


onClick="document.Nome_form.submit()" dove la form ha per action ad esempio
il mailto ............
cmq così facendo esludi NN4 con il quale l'immagine deve essere attorniata
dall'href per utilizzare l'evento onClick...
andreotta fabiano
 WebMªster ATI POWER s.n.c.
 
andr...@atipower.it
 
http://www.atipower.it
 
http://www.aticommerce.com
 
http://www.afdsoftware.freeweb.org
 
http://www.jsdir.com
 
http://www.javascript.3000.it

Non tutti i browser attivano azioni per il tag img; si circonda sempre
con un collegamento:
<a
href="mailto:
pip...@iol.it
?subject=Ciao%20amico&body=Tanti%20saluti"><i
mg src="quella che vuoi"></a>
se vuoi usare l'evento onClick:
<a href="javscript:void(0)"
onClick="location='mailto:
pip...@iol.it
?subject=Ciao%20amico&body=Tanti
%20saluti';return false"><img src="quella che vuoi"></a>
Saluti, Paolo


Ringrazio atipower e pippopd per l'aiuto,ma il mio scopo era quello di
continuare a far funzionare delle gif animate all'interno di una pagina
che si bloccano all'apertura del messaggio di posta elettronica,e
purtroppo con le soluzioni che mi avete inviato,
succede la stessa cosa.Non so se potete ancora aiutarmi?
                                                              Grazie,un
saluto
                                                                  jaman

 ha scritto nel messaggio
news:3A354BAB...@lycosmail.com...

In qualsiasi modo si usi il mailto, con href, action o
javascript:location,  per il browser e' sempre come se fosse stato
scritto nella barra degli indirizzi della finestra, e, quindi, le
attivita' della finestra vengono interrotte.
Una soluzione, non so se ce ne sono altre, e' quella di indirizzare la
richiesta ad un'altra finestra; in questo modo le attivita' della
finestra principale non vengono interrotte.
Per IE5+ e NS6 e' quindi sufficiente inserire un ilayer e indicarlo come
obiettivo del collegamento; ilayer viene visto come una finestra a se
stante e quindi non interferisce con la finestra principale.
<a
href="mailto:
pip...@iol.it
?subject=Ciao%20amico&body=Tanti%20saluti'"
target="pippo">
<img src="bottone2.gif"></a><br>
<iframe src="" id="pippo" height=1 width=1></iframe>
Per NS4, invece, e' necessario usare una nuova finestra o una struttura
a frame.
Se provi questo codice con NS4, vedrai che apre una nuova finestra,
l'editor della posta mentre la gif animata non si ferma.
Spero di essere stato d'aiuto.
Saluti, Paolo

 a frame.
Ma come! Ti sei dato la soluzione da solo (confondendo "ilayer" con
"iframe") e non la usi? :?

 succede la stessa cosa.Non so se potete ancora aiutarmi?
Come ti ha gia' risposto pippopd, questo e' dovuto al fatto che un chiamata
ad un href e' considerato cmq un cambio di "locazione", con conseguente
"morte" dell'attivita' della pagina corrente (animazione delle gif, midi in
sottofondo..)..
Estendendo la risposta di pippopd, ti ho scritto al volo questo codice.
Onestamente, mi sembra un po' uno "spreco di energie" solo per mantenere una
gif in movimento, ma posso capirti. ;)
Non l'ho provato, ma dovrebbe funzionare sia su IE che su NS 4.x / NN6.0...
Se non altro, non ti apre una nuova finestra, che puo' essere "fastidiosa".
<script>
 function postMail(address){
  if (document.getElementById || document.all)
   document.frames["frameHidden"].location.href="mailto:"+address;
  else if (document.layers)
   document.layers["layerHidden"].src="mailto:"+address;
 }
</script>
<a href="#" onclick="postMail('
zer0...@hotmail.com
');return false;">send
me a mail</a>
<layer id="layerHidden"></layer>
<iframe name="frameHidden" src="about:blank" style="display:none"></iframe>
Ciao, e fammi sapere.

 "iframe") e non la usi? :?
E la prima cosa che ho provato , ma, con NS4.51, la gif si bloccava,
almeno nella pagina dove ho fatto le prove.
Ora, senza altri elementi nella pagina, funziona correttamente, misteri
di NS.
Saluti, Paolo

ZER0 wrote:

La tua soluzione funziona perfettamente in explorer 4.x mentre in netscape 4.x
funziona con la prima email ma se poi vuoi inviare un altro messaggio, non fa
partire piu' il gestore di posta elettronica.
                                 Grazie comunque a tutti,un saluto jaman