20. januar 2002 - 23:17Der er
16 kommentarer og 1 løsning
Tekst som link
Er de nogen, der ved om man kan få alm. tekst til at opføre sig som links? Jeg har lavet en side, hvor jeg gerne vil benytte show-hide layers istedet for links, til at skifte mellem indholdet. Problemet er, at jeg ikke kan få \'onClick\'i Behaviors til at virke på alm. tekst, hvordan gør man det??, jeg vil desuden gerne have en \'visited\' og hoverfunktion med kan det lade sig gøre? Håber nogen vil hjælpe mig!
<html> <head> <title>Untitled Document</title> <meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\"> <script language=\"JavaScript\"> <!-- <!-- function MM_reloadPage(init) { //reloads the window if Nav4 resized if (init==true) with (navigator) {if ((appName==\"Netscape\")&&(parseInt(appVersion)==4)) { document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }} else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload(); } MM_reloadPage(true); // -->
function MM_findObj(n, d) { //v4.0 var p,i,x; if(!d) d=document; if((p=n.indexOf(\"?\"))>0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); if(!x && document.getElementById) x=document.getElementById(n); return x; }
function MM_showHideLayers() { //v3.0 var i,p,v,obj,args=MM_showHideLayers.arguments; for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2]; if (obj.style) { obj=obj.style; v=(v==\'show\')?\'visible\':(v=\'hide\')?\'hidden\':v; } obj.visibility=v; } } //--> </script> <style type=\"text/css\"> <!-- .tekstlink { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; font-style: normal; font-weight: normal; color: #000000; text-decoration: none} --> </style> </head>
<body bgcolor=\"#FFFFFF\" text=\"#000000\"> <div id=\"Layer1\" style=\"position:absolute; width:142px; height:209px; z-index:1; left: 13px; top: 29px; visibility: visible\"><a href=\"#\" onClick=\"MM_showHideLayers(\'Layer1\',\'\',\'show\',\'Layer2\',\'\',\'show\')\">dette er en tekst som skal være den man klikker på når man skal have vist et lag....</a></div> <div id=\"Layer2\" style=\"position:absolute; width:200px; height:115px; z-index:2; left: 242px; top: 139px; visibility: hidden\" onClick=\"MM_showHideLayers(\'Layer1\',\'\',\'show\',\'Layer2\',\'\',\'hide\')\">tekst der skal vises</div> </body> </html>
Tak for svaret! Jeg er lidt begynder til det her, så jeg har lidt svært ved at gennemskue det, vil du forklare lidt nærmere hvordan det virker?? Er der en måde, hvor jeg kan bruge Dreamweavers indbyggede Show-Hide layers funktion, da det drejer sig om en hel del sider??
hmm, det bliver en længere forklaring, men i hovedtræk skal du lave et link der skal være #, i behaviorsboksen skal du klikke på +´et og markere show/hide layers og sætte den til OnClick, herefter skal du så gør dit layer til at kontrollere, det skal sættes til Show ved OnClick og når du gør det samme med andre layers, skal det så sættes til Hide, da det ellers vil være synligt sammen med det andet layer, og det kan jo hurtigt blive et kaos af tekst:-)
håber at dette kunne hjælpe dig lidt på vej, men prøv at lege lidt med det, ellers kan du jo lige smide mig en mail ztyxx@ztyxx.f2s.com så kan jeg jo lige prøve at se din filer.
Tak for svaret, men jeg har allerede oprettet de layers der skal bruges, problemet er de \"tekstlinks\" som skal få layers til at vise sig, dem kan jeg kun få til at virke, hvis de er links som fører til en ny side, hvilket jo ikke er meningen. - giver det nogen mening??-det håber jeg:-)
Her er det så, det er layer4 jeg gerne vil have linket til teksten \"Kontakt\", der i øjeblikket linker til en anden side, hvilket ikke er meningen. Jeg håber ikke det er for rodet;-)
<html> <head> <title>side1</title> <meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\"> <script language=\"JavaScript\"> <!-- <!-- function MM_reloadPage(init) { //reloads the window if Nav4 resized if (init==true) with (navigator) {if ((appName==\"Netscape\")&&(parseInt(appVersion)==4)) { document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }} else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload(); } MM_reloadPage(true); // -->
function MM_findObj(n, d) { //v4.0 var p,i,x; if(!d) d=document; if((p=n.indexOf(\"?\"))>0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); if(!x && document.getElementById) x=document.getElementById(n); return x; }
function P7AniMagic(el, x, y, a, b, c, s) { //v2.5 PVII var g,elo=el,f=\"\",m=false,d=\"\";x=parseInt(x);y=parseInt(y); var t = \'g.p7Magic = setTimeout(\"P7AniMagic(\\\'\'+elo+\'\\\',\'; if ((g=MM_findObj(el))!=null) {d=(document.layers)?g:g.style;}else{return;} if (parseInt(s)>0) {eval(t+x+\',\'+y+\',\'+a+\',\'+b+\',\'+c+\',0)\",\' + s+\')\');return;} var xx=(parseInt(d.left))?parseInt(d.left):0; var yy=(parseInt(d.top))?parseInt(d.top):0; if(parseInt(c)==1) {x+=xx;y+=yy;m=true;c=0;} else if (c==2) {m=false;clearTimeout(g.p7Magic);} else {var i=parseInt(a); if (eval(g.moved)){clearTimeout(g.p7Magic);} if (xx<x){xx+=i;m=true;if(xx>x){xx=x;}} if (xx>x){xx-=i;m=true;if(xx<x){xx=x;}} if (yy<y){yy+=i;m=true;if(yy>y){yy=y;}} if (yy>y){yy-=i;m=true;if(yy<y){yy=y;}}} if (m) {if((navigator.appName==\"Netscape\") && parseInt(navigator.appVersion)>4){ xx+=\"px\";yy+=\"px\";} d.left=xx;d.top=yy;g.moved=true;eval(t+x+\',\'+y+\',\'+a+\',\'+b+\',\'+c+\',0)\",\'+b+\')\'); }else {g.moved=false;} }
det er lidt svært at overskue når du har lagt dine layers ind i hinanden, prøv at oprette din layers så de alle ligge på hovedsiden, altså når du har oprettet et layer, skal du sørge for at flytte markøren ud af det layer du lige har oprettet, inden du opretter nyt, og så skal du give dine layers navn, istedet for Layer 1 layer 2 osv.
Forstår godt, det er svært at overskue, men lagene er nød til at ligge i hinanden, da de tilsammen danner en scrollfunktion. Det er kun layer 4, der ikke er en del af dette, men den er nød til at ligge oven på de andre for at det virker. Ind til videre er det således kun layer 4 der er tekst, derfor har jeg ikke fået navngivet det (vil jeg selvfølgelig gøre, når der kommer flere lag til, dette var en prøve). De ligger desuden alle fire på samme side.:-)
<html> <head> <title>side1</title> <meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\"> <script language=\"JavaScript\"> <!-- <!-- function MM_reloadPage(init) { //reloads the window if Nav4 resized if (init==true) with (navigator) {if ((appName==\"Netscape\")&&(parseInt(appVersion)==4)) { document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }} else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload(); } MM_reloadPage(true); // -->
function MM_findObj(n, d) { //v4.0 var p,i,x; if(!d) d=document; if((p=n.indexOf(\"?\"))>0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); if(!x && document.getElementById) x=document.getElementById(n); return x; }
function P7AniMagic(el, x, y, a, b, c, s) { //v2.5 PVII var g,elo=el,f=\"\",m=false,d=\"\";x=parseInt(x);y=parseInt(y); var t = \'g.p7Magic = setTimeout(\"P7AniMagic(\\\'\'+elo+\'\\\',\'; if ((g=MM_findObj(el))!=null) {d=(document.layers)?g:g.style;}else{return;} if (parseInt(s)>0) {eval(t+x+\',\'+y+\',\'+a+\',\'+b+\',\'+c+\',0)\",\' + s+\')\');return;} var xx=(parseInt(d.left))?parseInt(d.left):0; var yy=(parseInt(d.top))?parseInt(d.top):0; if(parseInt(c)==1) {x+=xx;y+=yy;m=true;c=0;} else if (c==2) {m=false;clearTimeout(g.p7Magic);} else {var i=parseInt(a); if (eval(g.moved)){clearTimeout(g.p7Magic);} if (xx<x){xx+=i;m=true;if(xx>x){xx=x;}} if (xx>x){xx-=i;m=true;if(xx<x){xx=x;}} if (yy<y){yy+=i;m=true;if(yy>y){yy=y;}} if (yy>y){yy-=i;m=true;if(yy<y){yy=y;}}} if (m) {if((navigator.appName==\"Netscape\") && parseInt(navigator.appVersion)>4){ xx+=\"px\";yy+=\"px\";} d.left=xx;d.top=yy;g.moved=true;eval(t+x+\',\'+y+\',\'+a+\',\'+b+\',\'+c+\',0)\",\'+b+\')\'); }else {g.moved=false;} }
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.