Villum Sejersen <vse_FJERN@DETTE_trundholm.dk> writes:
> Det er "underholdende" at browse på mange store websteder med Mozilla
> og Opera i nyeste versioner, hhv. 1.3 og 7.0.3, med
> javascript-konsollen slået til. Her et helt tilfældigt eksempel fra et
> ellers fortræffeligt site. Men jeg kunne have valgt den første snes
> andre, der åbenbart mangler lidt ekstra korrekturlæsning:
>
>
> Interessant nok fanger browserne åbenbart hvert sit problem? Eller??
Ja. Det er forskelligt hvilke Microsoftopfindelser de har valgt at
efterligne. Mozilla har ikke en global event og Opera har ikke et
selection-objekt.
> Trods fejlmeldingerne ser funktionaliteten ud til være nogenlunde intakt.
Ja, det er jo ikke fordi Javascript normalt er nødvendigt for at bruge
en side. Hvis den er, så er det enten en meget specialiseret side
eller også er det en meget dårligt lavet side.
> Er der nogen der vil fortolke fejlene og give et bud på, hvad den
> pågældende webmaster (og kolleger) burde gøre ved det?
For window.event-fejlen: Brug standarden (events er parametre til
eventhandlerfunktioner) og fald tilbage på MS-opførsel hvis det ikke
virker. Jeg starter altid mine event-handlers med:
function (event) {
event = event || window.event;
Der er også mange andre forskelle på DOM Events og Microsoft events,
så det er ikke den eneste ting man skal holde øje med.
For selection-problemet er der ikke en standard, men de burde i det
mindste tjekke at selection-objektet findes før de begynder at bruge
det.
> Er det noget generelt mht. javascript-programmering, eller er det
> noget sprog- og versionsspecifikt, der trigger?
Javascriptsproget (eller ECMAScript) er et abstrakt sprog, der ikke
har noget specielt med websider at gøre. Fejlene her sker i det
interface der er mellem websiderne og Javascript. Der er en standard
(DOM), og der er browsere der har implementeret den standard, og
så er der Microsofts IE der stadig bruger deres egne metoder som
er ganske inkompatible med standarden. Derfor bliver man nødt til
at tjekke for hver ting man vil gøre om DOM-metoden findes eller om
IE-metoden findes, eller, hvis man virkelig vil være bagudkompatibel,
om Netscape 4's metoder findes i mangel på bedre (NS4 er fra før DOM
blev lavet, så de er lovligt undskyldt, men det er dem der bruger
en så forældet browser ikke :)).
> Det er ikke for at hænge nogen bestemt ud, for næsten alle hel- og
> halvoffentlige sites udløser tilsvarende meldinger.
Det sker hele tiden, og det eneste det kræver for at undgå dem, er at
tjekke før man bruger en feature. Specielt når man bruger en
ikke-standard-feature *bør* man tjekke først.
/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
Art D'HTML: <URL:
http://www.infimum.dk/HTML/randomArtSplit.html>
'Faith without judgement merely degrades the spirit divine.'