Newsgroup: it.comp.macintosh
Titolo: javascript e Safari

Safari, ora soprattutto che in Tiger non fa navigare bene su tanti siti
(vedi Vodafone) mi fa pentire di averlo amato.
Possibile che non riesca a visualizzare questo piccolo pezzo di
javascript?
---
<a href="/info/noi.htm" onMouseOver="window.status='Chi siamo'; return
true;"
      onMouseOut="window.satus=' '; return true;">
---
su altri browser (leggi, brrrr, I Explorer, e il mitico Omniweb)
visualizza "chi siamo" sulla status bar; con Safari nulla. E` normale?
ciao,
salvo
-- 
meglio Omniweb!
§alvomiŠ

       onMouseOut="window.satus=' '; return true;">
controlla il DOCTYPE del documento HTML; se si tratta di XHTML ha ragione
Safari: i nomi delle proprieta' (onmouseout, onmouseover) vanno scritte in
minuscolo
-- 
Postulato del passante: quando non riesci a
trovare la soluzione ad un problema, chiedi
al primo che passa. Solitamente trovera' la
soluzione esatta in pochi secondi.

 minuscolo
sì, vero, è:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
">
ma ho provato proprio ora, e Safari non esegue ugualmente.
A proposito, con questa DOCTYPE se faccio esaminare qualche pagina a
BBEdit mi dice che <BR />, >IMG ... /> e <Meta ... /> sono tag chiusi in
modo errato, mentre Taco HtmlEdit li accetta.
Chi ha ragione?
ciao, grazie
-- 
salvo 

 Chi ha ragione?
Se sono maiuscoli sono sbagliati, più che chiusi in modo errato. I tag 
xhtml sono tutti minuscoli.
Comunque per il tuo problema... guarda firefox, ha una console di debug 
javascript abbastanza completa (e migliorabile tramite estensioni).
-enrico
-- 
Never argue with a logician.

 javascript abbastanza completa (e migliorabile tramite estensioni).
Ho visto anche che Safari odia qualcosa come
<script language="JavaScript" type=text/javascript">
Per far funzionare gli script bisogna togliere language=
eppure, il codice per onmouseover non mi va lo stesso...
ciao,
Salvo
-- 
Steve, give us the NeXT Mac OS pda, please!
§alvomi©

 eppure, il codice per onmouseover non mi va lo stesso...
E con Firefox?
-- 
Odio gli indifferenti, perche` mi da noia il loro 
piagnisteo di eterni innocenti. [...]
Sono Partigiano. Percio` odio chi non parteggia.
Odio gli indifferenti. (Gramsci)

 pare che tu abbia trovato un bug, usa il menu apposito e dillo a apple
non saprei, vorrei essere sicuro, prima.
ciao,
Salvo

 E con Firefox?
Firefox 1.0.3 non mi visualizza nulla, solo "Completato".
Omniweb e IExplorer tutto ok.
-- 
salvo

 Ovvio. Non è un attributo supportato da xhtml 1.1
ok, ma dovrebbe funzionare (mi serve essere anche compatibili con
browser vecchiotti), però in certe pagine ho dovuto lasciare solo type o
almeno mettere type prima.
Secondo quale regola?
Ah, molti libri e manuali su Javascript indicano -purtroppo- solo
"language" come attributo.
Javascript pocket reference si O'Really dice invece "in effetti in
XHTM... bisogna usare type...", ma poi in tutti gli esempi usa
"language" :))
ciao,
Salvo

 visualizza "chi siamo" sulla status bar; con Safari nulla.
Ho scoperto l'acqua calda?
<
http://forums.devshed.com/archive/t-171141/status-bar-messages-in-Safar
i>
Non sono mica l'unico ad aver trovato questo difetto...
Bah...
ciao,
salvo

 primo link
Con Omniweb e Internet Explorer va onmouseover, ma non si vede
onmouseout.
TacoHTML (ma è un problema suo, di questo pur ottimo programma) dice:
"The attribute "xmlns" is not permitted in this tag. The attribute
"xml:lang" is not permitted in this tag. "
Confermato che safari *non* è in grado di usare onmouseover con
window.status, purtroppo.
*Dobbiamo* dirlo ad Apple.
-- 
Steve, give us Javascript, please!
§alvomi©

 javascript?
un'altra di cui non mi occupavo da tempo:
---
<script type="text/javascript" >
<!--
document.write("data odierna " + new Date() + "<br />");
document.write("ultima modifica" + document.lastModified);
//
-->
</script>
---
in Safari visualizza la prima data, ma non la data di ultima modifica.
Omniweb e i soliti ok.
Sbaglio io?
-- 
salvo

 Direi di no: Date.parse(document.lastModified) -> NaN
e dunque -a parte php- se voglio che un documento indichi la data di
modifica e si veda anche in Safari, che posso fare (a parte gridare a
Steve che migliori questo browser che sta perdendo la bussola)?
ciao,
Salvo

 Altre soluzioni sempre serverside (tipo cgi).
ok, grazie.
Intanto vedo nei forum Apple, se posso rompere le scatole un po',
sperando che si decidano a supportare JS come si deve ;-)
ciao,
Salvo

 e se ne sbatte di javascript).
Pare non bello...



prova qualcosa come:
var lastModDate = new Date(document.lastModified);
document.write("anno " + lastModDate.getYear() );
document.write("anno " + lastModDate.getMonth() );
document.write("anno " + lastModDate.getDay() );
Safari dà una data sempre costante 4 del mese 0 1970, siamo fermi
all'era Unix?
ciao,
Salvo

 gia` :-)
ed è un gran peccato che il "piu` migliore browser Mac" abbia questa (e
spero nessun'altra) mancanza...
A quanto ho capito qualcuno l'avrebbe gia` segnalato a Cupartino. Il
dubbio e`: gliene importa qualcosa?
:-)
-- 
salvo

 oggi come oggi non lo userei piu` in nessun caso.
ok, anch'io uso più spesso qualcosa in php come
<?php
echo "Pagina modificata il: " . date( "d F y H:i:s", getlastmod() );
?>
oppure un server side include, ma a volte non si ha php, o la pagina è
.html (e non .php) o per altre ragioni di compatibilità...
E comunque, non è bello sapere che Safari ha incompatibilità così
...sceme :)
ciao,
Salvo