Avatar billede jmc Nybegynder
23. juni 2005 - 11:57 Der er 7 kommentarer og
1 løsning

menuen forsvinder i firefox, hvad kan vi prøve?

<!--menu script start-->
<style type="text/css">
body {margin:0px; width:696;}
#tb {position:relative; visibility:hidden;}
#tb a {color:#9CA95F;}
#tb a:hover {color:#9CA95F;}
#content{position:relative; width:696; height:16px; background-color:#9CA95F;}
#menu1 {position:absolute; left:1px; top:0px;}
#menu2 {position:absolute; left:62px; top:0px;}
#menu3 {position:absolute; left:173px; top:0px;}
#menu4 {position:absolute; left:275px; top:0px;}
#menu5 {position:absolute; left:329px; top:0px;}
#menu6 {position:absolute; left:409px; top:0px;}
#menu7 {position:absolute; left:459px; top:0px;}
#menu8 {position:absolute; left:539px; top:0px;}
#menu9 {position:absolute; left:605px; top:0px;}
.menu {
    position:relative;
    cursor:pointer;
    padding:2px;
    z-index:999;
    left: 0px;
}
.sub {position:relative; width:175px; background-color:#e7e7f4; visibility:hidden; cursor:pointer; padding:4px; z-index:999;}
.sub a {color:#000000;}
.sub a:hover{color:#979E58;}
</style>
<script type="text/javascript">
/* 
Script made by Martial Boissonneault © 2002-2003 http://getElementById.com/
This script may be used and changed freely as long as this msg is intact
Visit http://getElementById.com/ for more free scripts and tutorials.
*/
var ie5 = (document.getElementById && document.all);
var ns6 = (document.getElementById && !document.all);

// there are 25 differents effects you can use.
// to change the duration of the effect, change the duration number. "Duration=2" => 2 seconds
var fade = "blendTrans(Duration=1.2)";
var boxIn = "revealTrans(Duration=0.7,Transition=0)";
var boxOut = "revealTrans(Duration=0.3,Transition=1)";
var circleIn ="revealTrans(Duration=0.7,Transition=2)";
var circleOut ="revealTrans(Duration=0.7,Transition=3)";
var wipeUp = "revealTrans(Duration=0.5,Transition=4)";
var wipeDown = "revealTrans(Duration=0.4,Transition=5)";
var wipeRight = "revealTrans(Duration=0.5,Transition=6)";
var wipeLeft = "revealTrans(Duration=0.5,Transition=7)";
var verticalblinds = "revealTrans(Duration=0.7,Transition=8)";
var horizontalblinds = "revealTrans(Duration=0.7,Transition=9)";
var checkerboardAcross = "revealTrans(Duration=0.7,Transition=10)";
var checkerboardDown = "revealTrans(Duration=0.7,Transition=11)";
var dissolve = "revealTrans(Duration=0.7,Transition=12)";
var splitVerticalIn = "revealTrans(Duration=0.5, Transition=13)";
var splitVerticalOut = "revealTrans(Duration=0.3, Transition=14)";
var splitHorizontalIn = "revealTrans(Duration=0.7, Transition=15)";
var splitHorizontalOut = "revealTrans(Duration=0.3, Transition=16)";
var stripsLeftDown = "revealTrans(Duration=0.7, Transition=17)";
var stripsLeftUp = "revealTrans(Duration=0.7, Transition=18)";
var stripsRightDown = "revealTrans(Duration=0.7,Transition=19)";
var stripsRightUp = "revealTrans(Duration=0.7,Transition=20)";
var randomBarsHorizontal = "revealTrans(Duration=0.7,Transition=21)";
var randomBarsVertical = "revealTrans(Duration=0.7,Transition=22)";
var random = "revealTrans(Duration=0.7,Transition=23)";

var myEffect = wipeDown;

function showFilter(obj, visibility) {
    if(ie5){
        menu[obj].style.filter = myEffect; // set your effect from one of the top 25 differents effects
        menu[obj].filters[0].Apply();
        menu[obj].style.visibility = visibility;
        menu[obj].filters[0].Play();
    }
    else if(ns6){
        menu[obj].style.visibility = visibility;
    }
}

function showHide(obj, visibility) {
    if(ie5 || ns6){
        menu[obj].style.visibility = visibility;
    }
}

function menuBarInit() {
    if(ie5 || ns6){
          menu = document.getElementsByTagName("div");
    }
}

function MakeActive(num) {
        if(ie5 || ns6) {
            for(i=0;i<lnk.length;i++) {
                lnk[i].style.color = "#000000";
                lnk[num].style.color = "#000000";
            }
        }
}


</script>
<!--menu script slut-->


unsnit html:

<div id="content"> <span id="menu1">
            <div class="menu style1" id="menuTitle1" onmouseover="showFilter('subMenu1','hidden')" onmouseout="showHide('subMenu1','hidden')"><a href="forside.htm" target="tekst" class="link1">FORSIDE</a>&nbsp;|&nbsp;</div>
            <div class="sub" id="subMenu1" onmouseover="showHide('subMenu1','hidden')" onmouseout="showHide('subMenu1','hidden')">
              </div>
Avatar billede per1291 Nybegynder
25. juni 2005 - 01:31 #1
Har du fundet en løsning?
Jeg synes scriptet er lidt langt at tage stilling til.
Sikkert derfor du ikke har fået svar.

Generelt tror jeg, browserchecks bør undgås i videst muligt omfang.
Erstat dem med et tjek for den aktuelle operation - så bliver koden mere generel.

For eksempel kan denne funktion

function showFilter(obj, visibility) {
    if(ie5){
        menu[obj].style.filter = myEffect;
        menu[obj].filters[0].Apply();
        menu[obj].style.visibility = visibility;
        menu[obj].filters[0].Play();
    }
    else if(ns6){
        menu[obj].style.visibility = visibility;
    }
}

sikkert erstattes af denne:

function showFilter(obj, visibility)
{
    if (menu[obj].style.filter = myEffect)
    {
        menu[obj].filters[0].Apply();
        menu[obj].style.visibility = visibility;
        menu[obj].filters[0].Play();
    }
    else
    {
        menu[obj].style.visibility = visibility;
    }
}

Denne notation betyder:

HVIS instruktionen (menu[obj].style.filter = myEffect) VIRKER,
SÅ udfør desuden de følgende instruktioner -
ELLERS udfør Netscape-linjen.

Jeg tror ikke, du i noget tilfælde har grund til at tjekke om (ie5||ns6) - for hvis instruktionerne ikke gør det ønskede, så tror jeg slet ikke de gør noget.

Altså: Med et check for, om den enkelte instruktion udføres, kan du få koden til at virke i diverse browsere, som du ikke ved så meget om.

Hilsen  Per
Avatar billede jmc Nybegynder
28. juni 2005 - 16:50 #2
rettelsen function show filter, så kommer menuen slet ikke frem

nu ser scriptet sådan ud:
<!--menu script start-->
<style type="text/css">
body {margin:0px; width:696;}
#tb {position:relative; visibility:hidden;}
#tb a {color:#9CA95F;}
#tb a:hover {color:#9CA95F;}
#content{position:relative; width:696; height:16px; background-color:#9CA95F;}
#menu1 {position:absolute; left:1px; top:0px;}
#menu2 {position:absolute; left:62px; top:0px;}
#menu3 {position:absolute; left:173px; top:0px;}
#menu4 {position:absolute; left:275px; top:0px;}
#menu5 {position:absolute; left:329px; top:0px;}
#menu6 {position:absolute; left:409px; top:0px;}
#menu7 {position:absolute; left:459px; top:0px;}
#menu8 {position:absolute; left:539px; top:0px;}
#menu9 {position:absolute; left:605px; top:0px;}
.menu {
    position:relative;
    cursor:pointer;
    padding:2px;
    z-index:999;
    left: 0px;
}
.sub {position:relative; width:175px; background-color:#e7e7f4; visibility:hidden; cursor:pointer; padding:4px; z-index:999;}
.sub a {color:#000000;}
.sub a:hover{color:#979E58;}
</style>
<script type="text/javascript">
/* 
Script made by Martial Boissonneault © 2002-2003 http://getElementById.com/
This script may be used and changed freely as long as this msg is intact
Visit http://getElementById.com/ for more free scripts and tutorials.
*/
var ie5 = (document.getElementById && document.all);
var ns6 = (document.getElementById && !document.all);

// there are 25 differents effects you can use.
// to change the duration of the effect, change the duration number. "Duration=2" => 2 seconds
var fade = "blendTrans(Duration=1.2)";
var boxIn = "revealTrans(Duration=0.7,Transition=0)";
var boxOut = "revealTrans(Duration=0.3,Transition=1)";
var circleIn ="revealTrans(Duration=0.7,Transition=2)";
var circleOut ="revealTrans(Duration=0.7,Transition=3)";
var wipeUp = "revealTrans(Duration=0.5,Transition=4)";
var wipeDown = "revealTrans(Duration=0.4,Transition=5)";
var wipeRight = "revealTrans(Duration=0.5,Transition=6)";
var wipeLeft = "revealTrans(Duration=0.5,Transition=7)";
var verticalblinds = "revealTrans(Duration=0.7,Transition=8)";
var horizontalblinds = "revealTrans(Duration=0.7,Transition=9)";
var checkerboardAcross = "revealTrans(Duration=0.7,Transition=10)";
var checkerboardDown = "revealTrans(Duration=0.7,Transition=11)";
var dissolve = "revealTrans(Duration=0.7,Transition=12)";
var splitVerticalIn = "revealTrans(Duration=0.5, Transition=13)";
var splitVerticalOut = "revealTrans(Duration=0.3, Transition=14)";
var splitHorizontalIn = "revealTrans(Duration=0.7, Transition=15)";
var splitHorizontalOut = "revealTrans(Duration=0.3, Transition=16)";
var stripsLeftDown = "revealTrans(Duration=0.7, Transition=17)";
var stripsLeftUp = "revealTrans(Duration=0.7, Transition=18)";
var stripsRightDown = "revealTrans(Duration=0.7,Transition=19)";
var stripsRightUp = "revealTrans(Duration=0.7,Transition=20)";
var randomBarsHorizontal = "revealTrans(Duration=0.7,Transition=21)";
var randomBarsVertical = "revealTrans(Duration=0.7,Transition=22)";
var random = "revealTrans(Duration=0.7,Transition=23)";

var myEffect = wipeDown;

function showFilter(obj, visibility)
{
    if (menu[obj].style.filter = myEffect)
    {
        menu[obj].filters[0].Apply();
        menu[obj].style.visibility = visibility;
        menu[obj].filters[0].Play();
    }
    else
    {
        menu[obj].style.visibility = visibility;
    }
}


function showHide(obj, visibility) {
    if(ie5 || ns6){
        menu[obj].style.visibility = visibility;
    }
}

function menuBarInit() {
    if(ie5 || ns6){
          menu = document.getElementsByTagName("div");
    }
}

function MakeActive(num) {
        if(ie5 || ns6) {
            for(i=0;i<lnk.length;i++) {
                lnk[i].style.color = "#000000";
                lnk[num].style.color = "#000000";
            }
        }
}


</script>
<!--menu script slut-->


unsnit html:

<div id="content"> <span id="menu1">
            <div class="menu style1" id="menuTitle1" onmouseover="showFilter('subMenu1','hidden')" onmouseout="showHide('subMenu1','hidden')"><a href="forside.htm" target="tekst" class="link1">FORSIDE</a>&nbsp;|&nbsp;</div>
            <div class="sub" id="subMenu1" onmouseover="showHide('subMenu1','hidden')" onmouseout="showHide('subMenu1','hidden')">
              </div>
Avatar billede jmc Nybegynder
28. juni 2005 - 16:50 #3
jeg hæver lige points til 100, da jeg ikke kan gennemskue det javacsript.
Avatar billede roenving Novice
28. juni 2005 - 16:56 #4
Du skal vel også vise den frem ?-)

<div id="content"> <span id="menu1">
            <div class="menu style1" id="menuTitle1" onmouseover="showFilter('subMenu1','visible')" onmouseout="showHide('subMenu1','hidden')"><a href="forside.htm" target="tekst" class="link1">FORSIDE</a>&nbsp;|&nbsp;</div>
            <div class="sub" id="subMenu1" onmouseover="showHide('subMenu1','visible')" onmouseout="showHide('subMenu1','hidden')">
              </div>
Avatar billede jmc Nybegynder
08. august 2005 - 23:31 #5
du har ret, points?
Avatar billede roenving Novice
09. august 2005 - 00:07 #6
Velbekomme '-)

-- men behold selv nogle af dine point ;~}
Avatar billede roenving Novice
09. august 2005 - 00:07 #7
;O)
Avatar billede roenving Novice
06. september 2005 - 02:21 #8
-- og tak for point ;~}
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