Avatar billede sekt Nybegynder
07. november 2005 - 09:37 Der er 6 kommentarer og
1 løsning

JavaScript virker ikke rugtigt i InternetExplorer men i Opera

Jeg har lavet denne function i java script:

function Expand(ElementId,xvisibility,xposition){
  var x=document.getElementById(ElementId);
  var xx=document.getElementById('img'+ElementId);
  var y=document.getElementById(ElementId).getElementsByTagName('div');
    var yy='';
    var i;

    //alert (x.id+' '+visibility+' '+position+' '+xx.alt);


    if (xposition=='' && xvisibility=='' && xx.alt=='minus'){
        xvisibility    =    'hidden';
        xposition        =    'absolute';
        xsrc                    =    './plus.gif';
        xalt                    =    'plus';
    };

    if (xposition=='' && xvisibility=='' && xx.alt=='plus'){
        xvisibility    =    'visible';
        xposition        =    'relative';
        xsrc                    =    './minus.gif';
        xalt                    =    'minus';
    };


    x.style.visibility    =    xvisibility;
    x.style.position        =    xposition;
    xx.src                            =    xsrc;
    xx.alt                            =    xalt;
    for (i=0;i<y.length;i++){
        //alert (x.id+' '+y[i].id+' '+visibility+' '+position);
        Expand(y[i].id,xvisibility,xposition);
    };
    //alert (x.id+' '+x.style.visibility+' '+x.style.position+' '+xx.alt);
};

og tester den på siden:

http://sekt.dk/Test/JavaScript/Test%20CSS%20JavaScript%20PHP/Test_1.html

men den giver meget forskelligt output i IE6.0 og Opera 8.5

har i noge bud på hvad der er galt.

SEKT.
Avatar billede olebole Juniormester
07. november 2005 - 13:15 #1
<ole>

Hvad får du udaf alle dine alerts? Prøv evt. at vise os et link til et eksempel, hvor de ikke er udkommenteret, så vi kan se, hvad der alert'es.

Derudover kunne du være lidt venligere ved dine brugeres browsere ved at undlade at forvirre den med en misvisende DTD og forkerte tag-lukninger.
Dokumentet er ikke et XHTML-dokument - og hvis det var, ville IE ikke kunne vise det, men ville forsøge at downloade det. End ikke IE7 kommer til at understøtte XHTML - som stort set ikke kan bruges til noget fornuftigt på WWW idag.
Læs evt:
    http://www.eksperten.dk/artikler/537
    http://www.eksperten.dk/artikler/538

/mvh
</bole>
Avatar billede sekt Nybegynder
07. november 2005 - 13:18 #2
Hej

Jeg tror jeg selv, med god hjælp fra en ven har fundet en løsning, ved at bruge style.display='none' og
style.display='inline'

når jeg er færdig med min test kommer svaret her
SEKT
Avatar billede sekt Nybegynder
07. november 2005 - 13:23 #3
Hej
så er mit JavaScript testet her er løsningen, den virker i IE6.0 & Opera 8.5 & FF 1.0.7

/* Test_1.js (c) 2005 Svenn-Erik K. Thomsen (sekt@sekt.dk)
*
* TERMS OF USAGE:
* This file was written and developed by Svenn-Erik K. Thomsen (sekt@sekt.dk)
* for educational and demonstration purposes only.  You are hereby granted the
* rights to use, modify, and redistribute this file as you like.  The only
* requirement is that you must retain this notice, without modifications, at
* the top of your source code.  No warranties or guarantees are expressed or
* implied. DO NOT use this code in a production environment without
* understanding the limitations and weaknesses pretaining to or caused by the
* use of these scripts, directly or indirectly. USE AT YOUR OWN RISK!
*/

function Expand(ElementId,xvisibility){
    var x        =    document.getElementById(ElementId);
    var xx    =    document.getElementById('img'+ElementId);
    var y        =    document.getElementById(ElementId).getElementsByTagName('div');
    var i;

    if (xvisibility=='' && xx.alt=='minus'){
        xdisplay        =    'none'
        xvisibility    =    'hidden';
        xsrc                =    './plus.gif';
        xalt                =    'plus';
    };

    if (xvisibility=='' && xx.alt=='plus'){
        xdisplay        =    'inline'
        xvisibility    =    'visible';
        xsrc                =    './minus.gif';
        xalt                =    'minus';
    };

    x.style.display            =    xdisplay;
    x.style.visibility    =    xvisibility;
    xx.src                            =    xsrc;
    xx.alt                            =    xalt;
    for (i=0;i<y.length;i++){
        Expand(y[i].id,xvisibility,xposition);
    };
};
Avatar billede olebole Juniormester
07. november 2005 - 13:23 #4
Jeg tvivler. Moz giver denne fejl:

Error: xposition is not defined
Source File: http://sekt.dk/Test/JavaScript/Test%20CSS%20JavaScript%20PHP/Test_1.js
Line: 39

- så noget _er_ der galt  ;o)
Prøv under alle omstændigheder at læse de to artikler, så du ikke spilder din ungdom på ubrugelig pseudo-XHTML kode
Avatar billede olebole Juniormester
07. november 2005 - 13:25 #5
Nej, det er ikke i orden i FF. Den smider stadig JS-fejl  :)
Avatar billede sekt Nybegynder
07. november 2005 - 13:31 #6
du har ret jeg glemte at slette lidt
linie 39 : skal se ud som følger Expand(y[i].id,xvisibility);

jeg skal nok læse dine artikler, de er skrevet ud for gennemlæsning

Sekt.
Avatar billede sekt Nybegynder
07. november 2005 - 13:37 #7
Tak til olebole, for at lede min opmærksom hed hen på JavaScript testeren som er indbygget i både FireFox & Opera , det gør jo det hele lettere

Svenn-Erik
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

IT-JOB

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Cyberdivisionen søger AI forretningskonsulent i Ballerup

Capgemini Danmark A/S

IGNITE Graduate Program 2026

Lægemiddelstyrelsen

Løsningsarkitekt

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Ingeniør til Satellitkommunikation