Avatar billede boris16 Nybegynder
11. oktober 2001 - 13:54 Der er 10 kommentarer

Hvordan sætter \'\'target\'\' på

Hvordan sætter jeg \'\'target\'\' på i Java Script ?
Her min et stykke af mit script:

//configure below for menu items. Extend list as desired

menui[0]=\"Home\";
menui[1]=\"Product\";

menul[0]=\"main.html\";
menul[1]=\"products/index.html\";
Avatar billede jakoba Nybegynder
11. oktober 2001 - 13:57 #1
Det stykke er alt for lille til at give et fornuftigt svar.

Kan du (bedst) give et link til det sted du kopiererde menuen fra?

eller bare poste menuen?

mvh JakobA
Avatar billede boris16 Nybegynder
11. oktober 2001 - 14:01 #2
Jo her er hele scriptet...

<STYLE TYPE=\"text/css\">
<!--

.menuh    {
        BORDER-COLOR : #FFFF99 ;
        cursor : hand ;
        Border-Left : #FFFF99 ;
        Border-Top : #FFFF99 ;
        Padding-Left : 1px ;
        Padding-Top : 1px ;
        Background-Color : #FFFF99 ;
    }
.menu    {
        Background-Color : white ;
    }
.home    {
        cursor : hand ;
    }

.menulinks{
text-decoration:none;
}
//-->
</STYLE>

    <body bgcolor=\"#ffffff\">
<SCRIPT Language=\"Javascript1.2\">
<!--

/*
Static menu script II (By maXimus, maximus@nsimail.com, http://maximus.ravecore.com/)
Modified slightly/ permission granted to Dynamic Drive to feature script in archive
For full source, usage terms, and 100\'s more DHTML scripts, visit http://dynamicdrive.com
*/

//configure below variable for menu width, position on page
var menuwidth=110
var offsetleft=10
var offsettop=90

var ns4=document.layers?1:0
var ie4=document.all?1:0
var ns6=document.getElementById&&!document.all?1:0

function makeStatic() {
if (ie4) {object1.style.pixelTop=document.body.scrollTop+offsettop}
else if (ns6) {document.getElementById(\"object1\").style.top=window.pageYOffset+offsettop}
else if (ns4) {eval(document.object1.top=eval(window.pageYOffset+offsettop));}
setTimeout(\"makeStatic()\",0);
}

if (ie4||ns6) {document.write(\'<span ALIGN=\"CENTER\" ID=\"object1\" STYLE=\"Position:absolute; Top:20; Left:\'+offsetleft+\'; Z-Index:5;cursor:hand;background-color:black;\"><TABLE BORDER=\"1\" width=\"\'+menuwidth+\'\" CELLPADDING=\"0\" CELLSPACING=\"0\" BORDERCOLOR=\"black\" bgcolor=\"white\">\')}
else if (ns4){ document.write(\'<LAYER top=\"20\" name=\"object1\" left=\"\'+offsetleft+\'\" BGCOLOR=black><TABLE BORDER=\"0\" CELLPADDING=\"0\" CELLSPACING=\"1\"><TR><TD><TABLE BORDER=\"0\" CELLPADDING=\"0\" CELLSPACING=\"0\" width=\"\'+menuwidth+\'\">\')}

if (ie4||ns6||ns4)
document.write(\'<TR><TD BGCOLOR=\"#3399FF\" BORDERCOLORDARK=\"#99CCFF\" BORDERCOLORLIGHT=\"#003399\"><P ALIGN=CENTER><FONT SIZE=\"4\" FACE=ARIAL>Menu</FONT></TD></TR>\')

var menui = new Array();
var menul = new Array();

//configure below for menu items. Extend list as desired

menui[0]=\"Home\";
menui[1]=\"Product\";
menui[2]=\"About DeskPro\";
menui[3]=\"Contact\";
menui[4]=\"Where to find?\";
menui[5]=\"Service\";
menui[6]=\"\";
menui[7]=\"\";

menul[0]=\"main.html\";
menul[1]=\"products/index.html\";
menul[2]=\"http://dynamicdrive.com/hot.htm\";
menul[3]=\"http://wsabstract.com/cgi-bin/Ultimate.cgi\";
menul[4]=\"http://dynamicdrive.com/faqs.htm\";
menul[5]=\"http://dynamicdrive.com/submit.htm\";
menul[6]=\"http://dynamicdrive.com/link.htm\";
menul[7]=\"http://dynamicdrive.com/contact.htm\";

for (i=0;i<=menui.length-1;i++)
if (ie4||ns6) {document.write(\'<TR><TD BORDERCOLOR=\"white\" ONCLICK=\"location=\\\'\'+menul[i]+\'\\\'\" onmouseover=\"className=\\\'menuh\\\'\" onMouseout=\"className=\\\'menu\\\'\"><CENTER><FONT>\'+menui[i]+\'</FONT></TD></TR>\')}
else if (ns4){document.write(\'<TR><TD BGCOLOR=\"white\"><ILAYER><LAYER width=\"\'+menuwidth+\'\" onmouseover=\"bgColor=\\\'yellow\\\'\" onmouseout=\"bgColor=\\\'white\\\'\"><CENTER><A HREF=\"\'+menul[i]+\'\" class=menulinks>\'+menui[i]+\'</A></CENTER></LAYER></ILAYER></TD></TR>\')}

if (ie4||ns6) {document.write(\'</TABLE></span>\')}
else if (ns4){document.write(\'</TABLE></TD></TR></TABLE></LAYER>\')}

function menu3(){
if (ns6||ie4||ns4)
makeStatic()
}

window.onload=menu3

//-->
</SCRIPT>
Avatar billede helle_fred Nybegynder
11. oktober 2001 - 14:49 #3
altså er det du vil, at du vil have din funktion til at skrive en menu, hvor links til menupunkterne har en anden frame som target? -
Avatar billede apollo69 Nybegynder
11. oktober 2001 - 14:58 #4
Venter spændt. ;)
Sidder lige med samme problem.
Avatar billede jakoba Nybegynder
11. oktober 2001 - 14:59 #5
Den menu er ikke beregnet til at have rammer, kan du evt undvære dem?

hvis ikke skulle det virke hvis du ændrer scriptet som nedenfor:

<STYLE TYPE=\"text/css\">
<!--

.menuh    {
        BORDER-COLOR : #FFFF99 ;
        cursor : hand ;
        Border-Left : #FFFF99 ;
        Border-Top : #FFFF99 ;
        Padding-Left : 1px ;
        Padding-Top : 1px ;
        Background-Color : #FFFF99 ;
    }
.menu    {
        Background-Color : white ;
    }
.home    {
        cursor : hand ;
    }

.menulinks{
text-decoration:none;
}
//-->
</STYLE>

    <body bgcolor=\"#ffffff\">
<SCRIPT Language=\"Javascript1.2\">
<!--

/*
Static menu script II (By maXimus, maximus@nsimail.com, http://maximus.ravecore.com/)
Modified slightly/ permission granted to Dynamic Drive to feature script in archive
For full source, usage terms, and 100\'s more DHTML scripts, visit http://dynamicdrive.com
*/

//configure below variable for menu width, position on page
var menuwidth=110
var offsetleft=10
var offsettop=90

var ns4=document.layers?1:0
var ie4=document.all?1:0
var ns6=document.getElementById&&!document.all?1:0

function makeStatic() {
if (ie4) {object1.style.pixelTop=document.body.scrollTop+offsettop}
else if (ns6) {document.getElementById(\"object1\").style.top=window.pageYOffset+offsettop}
else if (ns4) {eval(document.object1.top=eval(window.pageYOffset+offsettop));}
setTimeout(\"makeStatic()\",0);
}

if (ie4||ns6) {document.write(\'<span ALIGN=\"CENTER\" ID=\"object1\" STYLE=\"Position:absolute; Top:20; Left:\'+offsetleft+\'; Z-Index:5;cursor:hand;background-color:black;\"><TABLE BORDER=\"1\" width=\"\'+menuwidth+\'\" CELLPADDING=\"0\" CELLSPACING=\"0\" BORDERCOLOR=\"black\" bgcolor=\"white\">\')}
else if (ns4){ document.write(\'<LAYER top=\"20\" name=\"object1\" left=\"\'+offsetleft+\'\" BGCOLOR=black><TABLE BORDER=\"0\" CELLPADDING=\"0\" CELLSPACING=\"1\"><TR><TD><TABLE BORDER=\"0\" CELLPADDING=\"0\" CELLSPACING=\"0\" width=\"\'+menuwidth+\'\">\')}

if (ie4||ns6||ns4)
document.write(\'<TR><TD BGCOLOR=\"#3399FF\" BORDERCOLORDARK=\"#99CCFF\" BORDERCOLORLIGHT=\"#003399\"><P ALIGN=CENTER><FONT SIZE=\"4\" FACE=ARIAL>Menu</FONT></TD></TR>\')

var menui = new Array();
var menul = new Array();
var menut = new Array();

//configure below for menu items. Extend list as desired

menui[0]=\"Home\";
menui[1]=\"Product\";
menui[2]=\"About DeskPro\";
menui[3]=\"Contact\";
menui[4]=\"Where to find?\";
menui[5]=\"Service\";
menui[6]=\"\";
menui[7]=\"\";

menul[0]=\"main.html\";
menul[1]=\"products/index.html\";
menul[2]=\"http://dynamicdrive.com/hot.htm\";
menul[3]=\"http://wsabstract.com/cgi-bin/Ultimate.cgi\";
menul[4]=\"http://dynamicdrive.com/faqs.htm\";
menul[5]=\"http://dynamicdrive.com/submit.htm\";
menul[6]=\"http://dynamicdrive.com/link.htm\";
menul[7]=\"http://dynamicdrive.com/contact.htm\";

menul[0]=\"indhold\";
menul[1]=\"indhold\"; // target for ramme med name=\'indhold\'
menul[2]=\"_top\";
menul[3]=\"_top\";
menul[4]=\"_top\";    // target for overtag hele framesettet
menul[5]=\"\";
menul[6]=\"\";
menul[7]=\"\";        // denne ramme


function targ ( nr ) {
    if ( menut[nr] == \"\" ) return \"\";
    if ( ns4 ) return \" target=\'\"+menut[nr]+\"\'\";
    if ( menut[nr].charAt(0)==\"_\" )
        return menut[nr].substr(1)+\".\"
    else return \"parent.\"+menut[nr]+\".\";
}; //end targ ( number ) -> string

for (i=0;i<=menui.length-1;i++)
if (ie4||ns6) {document.write(\'<TR><TD BORDERCOLOR=\"white\" ONCLICK=\'+targ[i]+\'\"location=\\\'\'+menul[i]+\'\\\'\" onmouseover=\"className=\\\'menuh\\\'\" onMouseout=\"className=\\\'menu\\\'\"><CENTER><FONT>\'+menui[i]+\'</FONT></TD></TR>\')}
else if (ns4){document.write(\'<TR><TD BGCOLOR=\"white\"><ILAYER><LAYER width=\"\'+menuwidth+\'\" onmouseover=\"bgColor=\\\'yellow\\\'\" onmouseout=\"bgColor=\\\'white\\\'\"><CENTER><A HREF=\"\'+menul[i]+targ(i)+\'\" class=menulinks>\'+menui[i]+\'</A></CENTER></LAYER></ILAYER></TD></TR>\')}

if (ie4||ns6) {document.write(\'</TABLE></span>\')}
else if (ns4){document.write(\'</TABLE></TD></TR></TABLE></LAYER>\')}

function menu3(){
if (ns6||ie4||ns4)
makeStatic()
}

window.onload=menu3

//-->
</SCRIPT>

Skriv selv nogen mere passende targes ind i menut -arrayet.

mvh JakobA
Avatar billede jakoba Nybegynder
11. oktober 2001 - 15:01 #6
ups. glemte at ændre arraynavn i targets arrayet det hedder menut og ikke menul

menut[0]=\"indhold\";
menut[1]=\"indhold\"; // target for ramme med name=\'indhold\'
menut[2]=\"_top\";
menut[3]=\"_top\";
menut[4]=\"_top\";    // target for overtag hele framesettet
menut[5]=\"\";
menut[6]=\"\";
menut[7]=\"\";        // denne ramme
Avatar billede helle_fred Nybegynder
11. oktober 2001 - 15:02 #7
eller hvis din target-frame hedder Frame 2 og er nummer to frame i et rammesæt, skal du ændre på For-sætningen lige under indlæsningen af dit array:

for (i=0;i<=menui.length-1;i++)
if (ie4||ns6) {document.write(\'<TR><TD BORDERCOLOR=\"white\" ONCLICK=\"top.frames[1].location=\\\'\'+menul[i]+\'\\\'\" onmouseover=\"className=\\\'menuh\\\'\" onMouseout=\"className=\\\'menu\\\'\"><CENTER><FONT>\'+menui[i]+\'</FONT></TD></TR>\')}
else if (ns4){document.write(\'<TR><TD BGCOLOR=\"white\"><ILAYER><LAYER width=\"\'+menuwidth+\'\" onmouseover=\"bgColor=\\\'yellow\\\'\" onmouseout=\"bgColor=\\\'white\\\'\"><CENTER><A HREF=\" \'+menul[i]+\' \" target=\"Frame 2\" class=menulinks>\'+menui[i]+\'</A></CENTER></LAYER></ILAYER></TD></TR>\')}
Avatar billede helle_fred Nybegynder
11. oktober 2001 - 15:42 #8
eller denne mere generelle løsning. Her sætter du navnet på target på  hver enkelt link ind i arrayet menu - og adskiller linkadresse og target navn med et \"+\". Du skal udskifte indlæsning af arrayet og for-løkken i dit program med dette (her bruger jeg target-navnene f1 og f3 - men du kan bruge andre og flere:

menul[0]=\"main.html+f2\";
menul[1]=\"products/index.html+f2\";
menul[2]=\"http://dynamicdrive.com/hot.htm+f1\";
menul[3]=\"http://wsabstract.com/cgi-bin/Ultimate.cgi+f2\";
menul[4]=\"http://dynamicdrive.com/faqs.htm+f1\";
menul[5]=\"http://dynamicdrive.com/submit.htm+f2\";
menul[6]=\"http://dynamicdrive.com/link.htm+f2\";
menul[7]=\"http://dynamicdrive.com/contact.htm+f2\";

for (i=0;i<=menui.length-1;i++){
var dest=menul[i].split(\"+\"); var a=dest[0]; var t=dest[1]
if (ie4||ns6) {document.write(\'<TR><TD BORDERCOLOR=\"white\" ONCLICK=\"top.\'+t+\'.location=\\\'\'+a+\'\\\'\" onmouseover=\"className=\\\'menuh\\\'\" onMouseout=\"className=\\\'menu\\\'\"><CENTER><FONT>\'+menui[i]+\'</FONT></TD></TR>\')}
else if (ns4){document.write(\'<TR><TD BGCOLOR=\"white\"><ILAYER><LAYER width=\"\'+menuwidth+\'\" onmouseover=\"bgColor=\\\'yellow\\\'\" onmouseout=\"bgColor=\\\'white\\\'\"><CENTER><A HREF=\" \'+a+\' \" target=\"\'+t+\'\" class=menulinks>\'+menui[i]+\'</A></CENTER></LAYER></ILAYER></TD></TR>\')}
}
Avatar billede ejensen Nybegynder
29. marts 2002 - 21:14 #9
.
Avatar billede ejensen Nybegynder
29. marts 2002 - 21:15 #10
ups - sorry
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester