/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Popup box uden reload, når link aktiveres ~
Fra : Karsten


Dato : 11-11-08 15:02

Hej.
Jeg bruger scriptet her på flere sider på min hjemmeside til at
poppe en box op med en formular.
...
<script type="text/javascript">
//<![CDATA[var foo=null; function focusfoo(){if
(foo&&!foo.closed) foo.focus();}
function blurfoo(){ if (foo&&!foo.closed) foo.blur();} //]]>
</script>
<a href="javascript:void(0)"
onclick="foo=window.open('popup.htm','win4','width=700,height=460
,top=11,left=0,toolbar=no,location=no,directories=no,status=no,me
nubar=no,scrollbars=yes,resizable=yes');return false"
onmouseover="focusfoo();"></a>
....

Det fungerer rigtig fint når der skiftes mellem popup og
moderside hvorfra det er aktiveret, men når linket bliver
reaktiveret alså klikket fra en anden side, reloades popup´n og
dermed forsvinder det, der er skrevet tidligere.

Er der nogen som kender en måde at kunne reaktivere linket fra en
anden side uden at popup boksen reloader sig selv?

På forhånd mange tak.
Karsten Østergaard


--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Ryan Kristensen (11-11-2008)
Kommentar
Fra : Ryan Kristensen


Dato : 11-11-08 17:13

On Tue, 11 Nov 2008 15:01:31 +0100, Karsten <bee@ready.dk> wrote:

> onclick="foo=window.open('popup.htm','win4','width=700,height=460
> ,top=11,left=0,toolbar=no,location=no,directories=no,status=no,me
> nubar=no,scrollbars=yes,resizable=yes');return false"
>
> Det fungerer rigtig fint når der skiftes mellem popup og
> moderside hvorfra det er aktiveret, men når linket bliver
> reaktiveret alså klikket fra en anden side, reloades popup´n og
> dermed forsvinder det, der er skrevet tidligere.

Jeg er ikke helt sikker på, at jeg forstår, hvad du vil.
Hvis du kun vil åbne en popup, hvis den ikke er åben, og hvis den er åben,
sætte fokus.
Så lav en funktion til det:
function pop() {
   if (!foo)
foo=window.open(window.location,'win4','width=700,height=460,top=11,left=0,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes');
   else foo.focus();
}

og kald den i onclick.

Derudover bør du nok fjerne focusfoo() fra onmouseover, da det hurtigt kan
blive irriterende, hvis man ved en fejl kommer hen over linket med musen.
Og overvej om href-attributen ikke kan linke til popup.htm - evt.
kombineret med target="_blank". Jeg kan bedst lide at være helt sikker på,
alle kan få adgang til informationerne.


--
Mvh.
Ryan Kristensen

Karsten (14-11-2008)
Kommentar
Fra : Karsten


Dato : 14-11-08 15:21


> Jeg er ikke helt sikker på, at jeg forstår, hvad du vil.
> Hvis du kun vil åbne en popup, hvis den ikke er åben, og hvis den er åben,
> sætte fokus.

- Ja det er netop hvad jeg gerne vil, men kan ikke (lidt uøvet) få det til at virke.
Se http://es-masseovne.dk/side1.htm

Hvis man åbner spørgsmålboksen og skriver noget, men så springer tilbage til modersiden og linker ind på den anden side, hvor spørgsmålsboksen så aktiveres igen. Så
bliver den reloadet og det skrevne er forsvundet. Den reload vil jeg gerne forhindre.
koden ser nu sådan ud:

<script type="text/javascript">
function pop() {
if (!foo)
foo=window.open(window.location,'win4','width=700,height=460,top=11,left=0,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes');
else foo.focus();
}
</script>

<a href="boks.htm" target="windowName"
onclick="pop=window.open('boks.htm','win4','width=600,height=460,top=11,left=400,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes
');return false" onMouseOver="pop.focus()";>Stil spørgsmål til os.</a>

Mvh Karsten



--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Birger Sørensen (14-11-2008)
Kommentar
Fra : Birger Sørensen


Dato : 14-11-08 17:16

Karsten har bragt dette til os:
>
>> Jeg er ikke helt sikker på, at jeg forstår, hvad du vil.
>> Hvis du kun vil åbne en popup, hvis den ikke er åben, og hvis den er åben,
>> sætte fokus.
>
> - Ja det er netop hvad jeg gerne vil, men kan ikke (lidt uøvet) få det til at
> virke. Se http://es-masseovne.dk/side1.htm
>
> Hvis man åbner spørgsmålboksen og skriver noget, men så springer tilbage til
> modersiden og linker ind på den anden side, hvor spørgsmålsboksen så
> aktiveres igen. Så bliver den reloadet og det skrevne er forsvundet. Den
> reload vil jeg gerne forhindre. koden ser nu sådan ud:
>
> <script type="text/javascript">
> function pop() {
> if (!foo)
> foo=window.open(window.location,'win4','width=700,height=460,top=11,left=0,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes');
> else foo.focus();
> }
> </script>
>
> <a href="boks.htm" target="windowName"
> onclick="pop=window.open('boks.htm','win4','width=600,height=460,top=11,left=400,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes
> ');return false" onMouseOver="pop.focus()";>Stil spørgsmål til os.</a>
>
> Mvh Karsten

Noget med at give spørgsmålsboksen et navn, og hvis boksen eksisterer
ikke reloade blot fokusere?

Birger

--
http://varmeretter.dk - billig, sund og hurtig mad
http://bbsorensen.dk



Ryan Kristensen (14-11-2008)
Kommentar
Fra : Ryan Kristensen


Dato : 14-11-08 17:53

On Fri, 14 Nov 2008 15:21:21 +0100, Karsten <bee@ready.dk> wrote:

> koden ser nu sådan ud:
>
> <script type="text/javascript">
> function pop() {
> if (!foo)
> foo=window.open(window.location,'win4','width=700,height=460,top=11,left=0,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes');
> else foo.focus();
> }
> </script>
>
> <a href="boks.htm" target="windowName"
> onclick="pop=window.open('boks.htm','win4','width=600,height=460,top=11,left=400,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes
> ');return false" onMouseOver="pop.focus()";>Stil spørgsmål til os.</a>

I onclick-handleren åbner du et vindue, du gemmer i variabelen "pop". Og
funktionen "pop" tjekker om "foo" findes.
Hvis du i stedet bruger pop-funktionen i din onclick, så burde det virke:
<a href="boks.htm" target="windowName" onclick="pop();return false">Stil
spørgsmål til os.</a>

--
Mvh.
Ryan Kristensen

Karsten (15-11-2008)
Kommentar
Fra : Karsten


Dato : 15-11-08 13:10

> Hvis du i stedet bruger pop-funktionen i din onclick, så burde det virke:
> <a href="boks.htm" target="windowName" onclick="pop();return false">Stil
> spørgsmål til os.</a>

Ja, jeg tror det er tæt på.
Men siden der aktiverer boksen loader bare sig selv nu. http://es-masseovne.dk/side1.htm
Hvis jeg sætter "boks.htm ind istedet for "window.location" kommer en fejlmelding. Så det dur ikke.
Er der vej rundt om det?

.....og koden nu.....
<script type="text/javascript">
//<![CDATA[
function pop() {if (!foo)
foo=window.open(window.location,'win4','width=700,height=460,top=11,left=0,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes');
else foo.focus(); }
var foo=null; function focusfoo(){if (foo&&!foo.closed) foo.focus();}
function blurfoo(){ if (foo&&!foo.closed) foo.blur();}
//]]></script>

<a href="boks.htm" target="boks"
onclick="pop();return false" onMouseOver="focusfoo()";>Stil spørgsmål til os.</a>
............
Tak for jeres indsats.
Karsten

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Karsten (20-11-2008)
Kommentar
Fra : Karsten


Dato : 20-11-08 15:04

Nå men jeg fandt løsningen et andet sted.
koden......
<script language=javascript>setInterval(testFoo,1000); // every 1 seconds
function testFoo() {
if (!window.opener.foo) {
window.opener.foo = self; } }
</script>
....
indsat på pop-siden gør udfaldet.

Tak for hjælpen dog her i forummet.
VH Karsten

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Søg
Reklame
Statistik
Spørgsmål : 177433
Tips : 31962
Nyheder : 719565
Indlæg : 6407967
Brugere : 218879

Månedens bedste
Årets bedste
Sidste års bedste