Og dog - med window.open kan man udvide sin URL med #navn, dvs. åbne vinduet på netop det sted man vil (mærket med <a name="navn">). Men når jeg forsøger det samme med showModelessDialog lykkes det ikke. Vinduet åbner ganske vist, men kun fra toppen. Er der nogle løsninger?
+ i dokumentet: onclick="openReferences('Inden1985');"
----
der er også lige nogle andre småting der ikke virker helt med showModelessDialog() så som at få boksen placeret på samme måde som min window.open, men det skal jeg nok finde ud af.
atn> har nu prøvet. det virker fint, bort set fra én ting. når jeg i hoveddokumentet flere gange har klikket på en henvinsing til dialogvinduet (dvs. forskellige henvisninger), sker der det pudsige at når jeg på et tidspunkt vil lukke dialogvinduet, så skal jeg lukke det ligeså mange gange som jeg har åbnet det - det tager simpelthen hele turen tilbage i sin history og åbner (med et lille blink imellem) ved at alle de steder, det har været åbnet inden det lukker helt, når man når til det sted, hvor man først åbnede det .... hvis du forstår?
I hovedvinduet (en iframe) har du en artikel. Gå ned til note 1 (markeret med fed blå skrift). Klik på den. Noten åbner i en anden iframe. Klik på henvisningerne i noten (markeret med fed grå skrift). Nu popper dialogboksen (som altså bare fungerer som et nyt vindue) op. Klik på to andre af henvinsingerne nede i notevinduet. Hver gang skiftes position i dialogboksen til den fulde reference. Forsøg så at lukke dialogboksen. Det kan du ikke, den åbner ved den position den var før. Hvis du 3 gange har klikket på en henvisning, er du nødt til at lukke vinduet 3 gange før den endelig lukker.
det der sker er at hver gang jeg klikker på en henvisning åbnes dialogboksen på ny. Så det er ikke den samme dialogboks der kører tilbage i sin history, men der åbnes en hel serie af nye dialogvinduer oveni det første. hmmn, hvorfor?
Jeg har umiddelbart ikke en løsning på hvorfor den lige gør dette....
Jeg prøvede et af de eksempler inde ved MS og der lavede den det samme hvis du klikke flere gange på open kanppen...
Jeg troede egentlig man kunne løse det med en window.close(); men det gav samme resultat...
Jeg ved ikke lige om du i den funktion du har lavet der popper vinduet kan lave et check om vinduet er åbnet ? - hvis det er luk det og åben et nyt....
Men hvis jeg lige finder en metode, skal jeg nok lige sende den...
atn> tak for hjælpen så langt. det lader til at der er endnu flere begrænsninger ved dialogboks-løsningen end ved det alm. vindue, så jeg tror jeg dropper ideen. men du har jo svaret på spørgsmål (og svaret rigtigt), så læg lige et svar.
Hmm....jeg tænkte på om man ikke kunne tælle en op hver gang man sendte noget til vinduet....og lave en eller anden form for histori.go(-X)....og så lukke bagefter...
Bare lige en tanke der strejfede.....ved ikke om det kan lade sig gøre...?
atn> problemet er bl.a. at en dialogboks åbnet med showModelessDialog() ikke kan lukkes med close(). Jeg har testet dette i forhold til et alm vindue, og det er helt sikkert at hvor et alm. vindue lukker på normal vis med close(), der kan en dialogboks i IE ikke lukke. Er der andre måder at lukke vinduer på i DHTML?
Så er der et eller andet galt.....for det er selv det de bruger...
Du kan selv checke deres kode....
Venligst
<ATN/>
<HTML> <HEAD> <TITLE>myDialog.htm</TITLE> <SCRIPT> /* ------------------------------------------------------------- This function makes use of the dialogArguments property of the window object. dialogArguments allows the global variable sUserName to feed the value supplied to the input in this dialog box back to the window that called it. ---------------------------------------------------------------- */ function fnGetInfo() { var sData = dialogArguments; sData.sUserName = oEnterName.value; sData.fnUpdate(); } /* ------------------------------------------------------------- This function cleans up in case the user has clicked the Apply button before canceling. ---------------------------------------------------------------- */ function fnCancel() { var sData = dialogArguments; sData.sUserName = "Joan"; sData.fnUpdate(); } </SCRIPT> </HEAD> <BODY> <LABEL FOR="oEnterName" ACCESSKEY="f">Enter your <SPAN STYLE="text-decoration:underline">F</SPAN>irst Name</LABEL> <INPUT ID=oEnterName><BR><BR> <INPUT VALUE="Apply" TYPE=button onclick="fnGetInfo();"> <INPUT VALUE="Ok" TYPE=button onclick="fnGetInfo();window.close();"> <INPUT VALUE="Cancel" TYPE=button onclick="fnCancel();window.close();"> </BODY> </HTML>
jeg har nu både fundet ud at lukke dialogboksen og at gå til forskellige #mærker i dokumentet, men nye problemer dukker op. så jeg jeg lukker her op starter et nyt sp.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.