[JavaScript] Layer dynamisch schrijven

Pagina: 1
Acties:

  • porn*
  • Registratie: Januari 2001
  • Laatst online: 26-08 13:24

porn*

...take on the world!

Topicstarter
Ben bezig met het downgraden van een site naar NS 4.x, en in die site wordt nogal veel met spans/divs gedaan, zo ook dynamisch de content van die containers aanpassen. In IE heb je daar mooi de innerHTML-method voor. In NS 4.x dus helaas niet... Ik dacht het zo te gaan doen:
code:
1
2
3
4
5
6
  var TOTTOT = document.layers["TOTTOT"];
  if(TOTTOT) {
    TOTTOT.document.open();
    TOTTOT.document.writeln("test");
    TOTTOT.document.close();
  }


Helaas werkt dat wel in een simpel klein html-documentje wat ik aanmaak, maar niet in de site zelf. Normaal zou dat niet zo moeilijk te debuggen zijn, maar ik krijg in NS niet eens een javascript error :?
Hij stopt gewoon vanaf dat punt met het uitvoeren van javascript. Iemand enig idee waar ik dat moet zoeken?

Bnet pindle#2913


  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 00:27

Pelle

🚴‍♂️

Een linkje zou helpen.

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 29-08 19:47

Bosmonster

*zucht*

Je kunt helaas in NS4 geen relatief gepositioneerde content aanpassen, zoals een span.

  • porn*
  • Registratie: Januari 2001
  • Laatst online: 26-08 13:24

porn*

...take on the world!

Topicstarter
Een linkje is niet zo makkelijk; het is een webapplicatie en ik kan/mag hem niet zomaar online zetten. Snap wel dat het lastig is om dan te helpen, maar hoopte dat iemand het probleem herkende? Ik krijg namelijk geen js foutmelding, hij stopt gewoon met het uitvoeren vanaf het punt dat ik de span wil writen.

De spans die ik aanpas zijn natuurlijk absoluut gepositioneerd ;)

Bnet pindle#2913


  • Clay
  • Registratie: Oktober 1999
  • Laatst online: 22-06 13:51

Clay

cookie erbij?

probeer het eens met er divs van te maken, en onthoud dat je geneste divs moet aanspreken met de parent erbij, dus documet.layers.divnaam.document.layers.divnaam.document.layers.divnaam enz, of ff een recursief loopje schrijven die ze voor je opzoekt in ns4, ala:

JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// is == browser check object
function getObject(id) {
    if(is.IE4UP) return document.all[id];
    if(is.NS6) return document.getElementById(id);
    if(is.NS4) return findObject(id, document);
}
    // NS4, finding nested layers
    // --------------------------------
    function findObject(name, doc) {
        if(doc.layers[name]) return doc.layers[name];
        for (var i=0; i<doc.layers.length; i++) {
            var res = findObject(name, doc.layers[i].document);
            if(res) return res;
            else continue;
        }   return false;
    }

Instagram | Flickr | "Let my music become battle cries" - Frédéric Chopin