Hollosi Information eXchange /HIX/
HIX WEBMESTER 172
Copyright (C) HIX
1997-10-05
Új cikk beküldése (a cikk tartalma az író felelőssége)
Megrendelés Lemondás
1 Re: JavaScript error az MS-ben (mind)  81 sor     (cikkei)

+ - Re: JavaScript error az MS-ben (mind) VÁLASZ  Feladó: (cikkei)

Szia Peter! Az ujsag tegnapi szamaban irtad:
<HTML><HEAD>
<SCRIPT language="JavaScript1.1">
function be() {
 document.images[0].src = "be.gif"
}
function ki() {
 document.images[0].src = "ki.gif"
}
</SCRIPT></HEAD>
<BODY><FORM>
<IMG src="ki.gif">
<P>
<INPUT type="button" onClick="be();" value="BE">
<INPUT type="button" onClick="ki();" value="KI">
</FORM></BODY></HTML>
=================
>Itt megfurcsabb modon az volt a hibauzenet valamelyik gombra kattintva,
>hogy a be()/ki() nincs definialva! Hat ezt meg annyira sem ertettem. Ugy
>tudom, hogy ez egy tok szabvanyos kod. Hol rontottam el?

Semmi baj a kododdal. Az egy jo pelda arra, hogyan kell dinamikusan
image-ekat cserelni egy helyben. Mukodik a kovetkezo browserokkal:
Netscape Navigator 3.2
Netscape Navigator 4.0.3
Internet Explorer 4.0

Az Internet Explorer 3.0.2-vel valoban kap az ember egy hibauzenetet, hogy
egy image az nem egy objektum. De ha jol megnezed, ezt az uzenetet a 
JScript ertelmezoje irja ki. Ennek oka az a regota tudott teny, hogy
Netscape az altala bevezetett JavaScript specifikaciojat nem tette kozze 
egy felevig. Microsoftnak VBScriptjet viszont a Netscape nem ismeri fel.
Igy az MS kijott a JScripttel, amely egy "best guess" alapjan keszult,
specifikacio hijjan, a celbol, hogy az IE tudjon JavaScriptet is kezelni.
A "best guess" miatt a JavaScript 20%-a nincsen implementalva, vagy maskeppen
mukodik. Ebbe esik be az Image is. Ezzel a problemaval a legtobb Web
keszito mar 1 eve szembenezett, es tobb fele megoldassal jottek ki.
A problema az IE 4.0 vegleges bevezetesevel meg is szunt.-

Az en megoldasom a kovetkezo: minthogy Imaget nem kezel a regi IE (de
amint lathatod az IE 4.0 mar igen), viszont image map-et tud, en ezert
a Te altalad felvetett problemat (dinamikus image-ek) image mappel
oldottam meg. Ez nem csak mukodik mindket browserrel, hanem elegansabb
is, mert nincs szukseg gombokra. Sot az IE 4.0 es a Netscape-ek eseteben
meg kattintani sem kell, amint elmozditod a kurzort a keprol, automatikusan
beugrik a masik kep! A regi IE 3.02 eseten a kepen kattintani kell,
hogy a masik megjelenjen. De mond mar, lenyeg, hogy a megoldassal bizton-
sagban vagy: senki nem kap semmifele hibauzenetet.

A teendo tehat ket rovid HTML file keszitese. A mintat az alabbiakban
kozlom:
A file neve: elso.html
> --------------------------------------------------------------------------
<HTML><HEAD></HEAD>
<BODY>
<MAP NAME="mymainmap">
<AREA COORDS="20,4,400,100" HREF="masodik.html"
onMouseOver="document.images[0].src='ki.gif';"
onMouseOut="document.images[0].src='be.jpg';">
</MAP>
<CENTER>
<IMG SRC="be.jpg" WIDTH=160 HEIGHT=120 BORDER=0 USEMAP="#mymainmap">
</CENTER>
</BODY></HTML>
> ----------------------------------------------------------------------------
Ennek a file-nak neve: masodik.html
<HTML><HEAD></HEAD>
<BODY>
<MAP NAME="mymainmap">
<AREA COORDS="20,4,400,100" HREF="elso.html"
onMouseOver="document.images[0].src='ki.gif';"
onMouseOut="document.images[0].src='be.jpg';">
</MAP>
<CENTER>
<IMG SRC="ki.gif" WIDTH=160 HEIGHT=120 BORDER=0 USEMAP="#mymainmap"> 
</CENTER>
</BODY></HTML>
> ----------------------------------------------------------------------------
----
Udvozol:	Szabolcs
http://www-rcf.usc.edu/~petrovay/

AGYKONTROLL ALLAT AUTO AZSIA BUDAPEST CODER DOSZ FELVIDEK FILM FILOZOFIA FORUM GURU HANG HIPHOP HIRDETES HIRMONDO HIXDVD HUDOM HUNGARY JATEK KEP KONYHA KONYV KORNYESZ KUKKER KULTURA LINUX MAGELLAN MAHAL MOBIL MOKA MOZAIK NARANCS NARANCS1 NY NYELV OTTHON OTTHONKA PARA RANDI REJTVENY SCM SPORT SZABAD SZALON TANC TIPP TUDOMANY UK UTAZAS UTLEVEL VITA WEBMESTER WINDOWS