Avatar billede Mette81 Juniormester
16. marts 2009 - 09:57 Der er 6 kommentarer og
1 løsning

Script virker ikke i Firefox...

Er der nogen der kan få dette script til at virke med Firefox og Safari? Det virker fint i IE og Opera, men safari og Firefox vil ikke rigtig acceptere det.

<SCRIPT LANGUAGE="JavaScript">
  <!--
   
    function change()
    {
        var srcIndex = event.srcElement.sourceIndex;
          var nested = document.all[srcIndex + 3];

        // alert('Du har klikket på element: ' + srcIndex);
     
          if(nested.style.display == 'none')
        {
                nested.style.display='';
                event.srcElement.style.listStyleImage='url(open.gif)';
        }
        else
        {
              nested.style.display='none'
              event.srcElement.style.listStyleImage='url(fold.gif)';
        }
       
    }

//-->
</SCRIPT>

På forhånd tak!

Mvh Mette.
Avatar billede chrisbuchholz Nybegynder
16. marts 2009 - 15:28 #1
Først og fremmest er language attributten deprecated siden 98'. Udskift denne med type="text/javascript".
Avatar billede chrisbuchholz Nybegynder
16. marts 2009 - 15:30 #2
Kan du forresten ikke prøve at linke til siden hvor dette script er på, så vi kan prøve at teste det live?
Avatar billede jhe-ting Nybegynder
16. marts 2009 - 17:50 #3
Der er stor forskel på event-håndteringen i IE og FF.
Måske kan dette føre mod en løsning:

<SCRIPT type="text/javascript">
  <!--
 
    function change(moz_event)
    {  // I FireFox hentes event som parameter.
        var evt = moz_event?moz_event:event;
        var elm = evt.target?evt.target:evt.srcElement;
          var srcIndex = elm.sourceIndex;
          var nested = document.all[srcIndex + 3];

        // alert('Du har klikket på element: ' + srcIndex);
   
          if(nested.style.display == 'none')
        {
                nested.style.display='';
                event.srcElement.style.listStyleImage='url(open.gif)';
        }
        else
        {
              nested.style.display='none'
              event.srcElement.style.listStyleImage='url(fold.gif)';
        }
     
    }

//-->
</SCRIPT>
Avatar billede Mette81 Juniormester
17. marts 2009 - 09:27 #4
I får lige hele siden:

<HTML>

<HEAD>

  <LINK REL="stylesheet" TYPE="text/css" HREF="style/main.css">
  <BASE TARGET="main">
 
  <SCRIPT LANGUAGE="JavaScript">
  <!--
   
    function change()
    {
        var srcIndex = event.srcElement.sourceIndex;
          var nested = document.all[srcIndex + 3];

        // alert('Du har klikket på element: ' + srcIndex);
     
          if(nested.style.display == 'none')
        {
                  nested.style.display='';
                  event.srcElement.style.listStyleImage='url(open.gif)';
        }
        else
        {
              nested.style.display='none'
              event.srcElement.style.listStyleImage='url(fold.gif)';
        }
       
    }

//-->
</SCRIPT>

</HEAD>
<BODY>

  <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0">
  <TR>
    <TD>
<TABLE BORDER="0" CELLSPACING="0" CELLPADDING="0">
<TR><TD><A HREF="sider/afdeling.asp?afd=94"><IMG SRC="grafik/navikon1.gif" WIDTH="7" HEIGHT="7" BORDER="0"> Morgenmadsprodukter</A><BR>
<A HREF="sider/afdeling.asp?afd=95"><IMG SRC="grafik/navikon1.gif" WIDTH="7" HEIGHT="7" BORDER="0"> Marmelade & Syltetøj</A><BR>
<A HREF="#" OnClick="change();" TARGET="_self"><IMG SRC="grafik/navikon1.gif" WIDTH="7" HEIGHT="7" BORDER="0"> Drikkevarer</A><BR>

<TABLE BORDER="0" CELLSPACING="0" CELLPADDING="0" STYLE="display: none;">
<TR><TD>   <A HREF="sider/afdeling.asp?afd=97"><IMG SRC="grafik/spacer.gif" WIDTH="7" HEIGHT="7" BORDER="0"> Sodavand</A><BR>
   <A HREF="sider/afdeling.asp?afd=98"><IMG SRC="grafik/spacer.gif" WIDTH="7" HEIGHT="7" BORDER="0"> Saft</A><BR>
   <A HREF="sider/afdeling.asp?afd=99"><IMG SRC="grafik/spacer.gif" WIDTH="7" HEIGHT="7" BORDER="0"> Kakao</A><BR>
</TD></TR></TABLE>
</TD></TR></TABLE>

    </TD>
  </TR>

  </TABLE>
</BODY>
</HTML>

Mvh Mette.
Avatar billede jhe-ting Nybegynder
17. marts 2009 - 12:46 #5
Ok, Mette. Så kan det laves lidt 'pænere':



<HTML>

<HEAD>

  <LINK REL="stylesheet" TYPE="text/css" HREF="style/main.css">
  <BASE TARGET="main">

  <SCRIPT LANGUAGE="JavaScript">
  <!--
 
    function toggleDrinks()
    {
          var nested = document.getElementById("drinksTable");
   
          if(nested.style.display == 'none')
        {
                  nested.style.display='';
                  event.srcElement.style.listStyleImage='url(open.gif)';
        }
        else
        {
              nested.style.display='none'
              event.srcElement.style.listStyleImage='url(fold.gif)';
        }
     
    }

//-->
</SCRIPT>

</HEAD>
<BODY>

  <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0">
  <TR>
    <TD>
<TABLE BORDER="0" CELLSPACING="0" CELLPADDING="0">
<TR><TD><A HREF="sider/afdeling.asp?afd=94"><IMG SRC="grafik/navikon1.gif" WIDTH="7" HEIGHT="7" BORDER="0"> Morgenmadsprodukter</A><BR>
<A HREF="sider/afdeling.asp?afd=95"><IMG SRC="grafik/navikon1.gif" WIDTH="7" HEIGHT="7" BORDER="0"> Marmelade & Syltetøj</A><BR>
<A HREF="#" OnClick="toggleDrinks();" TARGET="_self"><IMG SRC="grafik/navikon1.gif" WIDTH="7" HEIGHT="7" BORDER="0"> Drikkevarer</A><BR>

<TABLE ID="drinksTable" BORDER="0" CELLSPACING="0" CELLPADDING="0" STYLE="display: none;">
<TR><TD>  <A HREF="sider/afdeling.asp?afd=97"><IMG SRC="grafik/spacer.gif" WIDTH="7" HEIGHT="7" BORDER="0"> Sodavand</A><BR>
  <A HREF="sider/afdeling.asp?afd=98"><IMG SRC="grafik/spacer.gif" WIDTH="7" HEIGHT="7" BORDER="0"> Saft</A><BR>
  <A HREF="sider/afdeling.asp?afd=99"><IMG SRC="grafik/spacer.gif" WIDTH="7" HEIGHT="7" BORDER="0"> Kakao</A><BR>
</TD></TR></TABLE>
</TD></TR></TABLE>

    </TD>
  </TR>

  </TABLE>
</BODY>
</HTML>
Avatar billede jhe-ting Nybegynder
17. marts 2009 - 12:48 #6
PS: Ved at brug et ID-mærke (drinksTabel) undgås at tælle frem i dokumentet for at finde tabellen.
Avatar billede chrisbuchholz Nybegynder
17. marts 2009 - 12:56 #7
Udenover det, bør tags og attributter skrives med småt. Uppercase i disse er en gammel mode som ikke længere høre hjemme nogensteder.
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

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