Vad är en "hoppmeny"?
Hej!
Jag har en "hoppmeny" där jag har ett antal länkar. Hur gör jag om jag vill att dessa länkar ska öppnas i ett nytt fönster.
Tack p förhand.
16 svar · 603 visningar · startad av qwerty
Hej!
Jag har en "hoppmeny" där jag har ett antal länkar. Hur gör jag om jag vill att dessa länkar ska öppnas i ett nytt fönster.
Tack p förhand.
Vad är en "hoppmeny"?
En selct-meny. I Dreamweaver heter det hoppmeny.
Eftersom jag inte vet hur DreamWeaverkoden ser ut så kan jag inte ge dig något direkt svar, men kolla på dom här trådarna:
http://www.webforum.nu/showthread.php?s=&threadid=16810
http://www.webforum.nu/showthread.php?s=&threadid=16481
http://www.webforum.nu/showthread.php?s=&threadid=51940
(Flyttar även tråden till JavaScript-forumet ;))
Så här ser scriptet ut:
<script language="JavaScript">
<!--
function MM_jumpMenu(targ,selObj,restore){ //v3.0
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
if (restore) selObj.selectedIndex=0;
}
//-->
</script>
...och så här ser selectmenyn ut:
<select name="menu1" onChange="MM_jumpMenu('parent',this,0)">
<option selected>Välj område:</option>
<option value="http://www.sidan.se/index.htm">Lank1</option>
<option value="http://www.sidan.se/index2.htm">Lank2</option>
<option value="http://www.sidan.org">Lank3</option>
</select>
Det skiter sig hur jag än försöker...
Någon som kan ge mig ett tips utifrån mitt kodexempel?
function MM_jumpMenu(targ,selObj,restore){ //v3.0
eval(window.open('"+selObj.options[selObj.selectedIndex].value+"','windowname','width=320,height=320')");
if (restore) selObj.selectedIndex=0;
}
Du kan lägga till fler egenskaper på fönstret om du vill.
(Du kan ta bort targ ur interfacet om du vill, och också ta bort det argumentet när du anropar funktionen. Det används inte i funktionen längre)
Mvh,
"DreamWeaver"... Vad är det? Forumet för drömvävning och annat hokus pokus är runt hörnet ;) Här diskuterar vi riktiga saker som JavaScript och DHTML.
Tack för tips, men tyvärr funkar det inte.
När jag gör enligt @nders exempel händer det ingenting när jag väljer ett nytt alternativ i select-boxen. Återgår jag till det script jag hade från början så funkar det, men länken öppnas i samma fönster, vilket jag inte vill.
Nån som har en förklaring?
[r]
Skulle inte problemet kunna ligga i den här raden. Jag har försökt att byta up parent mot blank, men det hjälper inte.
<select name="menu1" onChange="MM_jumpMenu('parent',this,0)">
[/r]
Hur ser funktion och anrop ut nu, när det inte fungerar?
Så här:
<script language="JavaScript">
<!--
function MM_jumpMenu(selObj,restore){ //v3.0
eval(window.open('"+selObj.options[selObj.selectedIndex].value+"','windowname','width=640,height=480')");
if (restore) selObj.selectedIndex=0;
}
//-->
</script>
...och så här:
<select name="menu1" onChange="MM_jumpMenu('parent',this,0)">
<option selected>Välj område:</option>
<option value="http://www.page.nu/index.htm">Lank1</option>
<option value="http://www.page.com/index.htm">Lank2</option>
<option value="http://www.page.org">Lank3</option>
</select>
Om man i internet explorer klickar på den lilla gula triangeln nere i statusfältet kan man finna följande: Oavslutad strängkonstant och Ett objekt förväntas.
@nders skrev:
Du kan ta bort targ ur interfacet om du vill, och också ta bort det argumentet när du anropar funktionen.
Du har inte tagit bort argumentet när du anropar funktionen.
(är du säker på att oavslutad strängkonstant kommer från den här koden?)
Ursäkta min bristande kunskap, men exakt vad är det jag ska ta bort?
<select name="menu1" onChange="MM_jumpMenu([b]'parent',[/b]this,0)">
Du tog bort argumentet från funktionen, då måste du ta bort det ur anropet också.
Mvh,
Kollade i javascript-konsollen i NS: Nu ser det ut så här.
JavaScript Error: http://www.page.nu/docs/info.htm, line 16:
unterminated string literal.
eval(window.open('"+selObj.options[selObj.selectedIndex].value+"','windowname','width=640,height=480')");
......................................................................................................^
[r] (fast pilen pekar på det röda i slutet) [/r]
JavaScript Error: http://www.page.nu/docs/info.htm, line 274:
MM_jumpMenu is not defined.
Det ska vara ett citationstecken först också, det missade jag förut:
function MM_jumpMenu(selObj,restore){ //v3.0
eval("window.open('"+selObj.options[selObj.selectedIndex].value+"','windowname','width=640,height=480')");
if (restore) selObj.selectedIndex=0;
}
Mvh,
Vassego, slit den med hälsenan! :bire