[JS] Eigene Properties in Objekten (FireFox, IE, usw.)

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [JS] Eigene Properties in Objekten (FireFox, IE, usw.)

    Mal wieder unterschiedliches Verhalten der Browser. Bin auch nicht so der JS Experte. Aber hier mein Problem:

    Wenn ich eigene Properties in einem Objekt verwende um diese dann in einem JavaScript zu benutzen meckert FireFox immer rum das er das Property nicht kennen würde. IE6 ist es vollkommen egal und macht es genauso wie ich es mir gedacht hatte. Vielleicht reicht mein Wissen für JS auch einfach nicht aus und es gibt eine ganz andere einfache Lösung dieses Problem zu bewältigen.

    Hier nochmal ein Code Beispiel:

    Objekt mit eigenem Property:
    Code:
    <form id="suchFormular" method="post" action="" [B]modus="1"[/B]>
    <img src="test.gif" [B]search="0"[/B]>
    </form>
    JavaScript:

    Code:
    function changeModus () {
    objForm = document.getElementById ("suchFormular");
    objForm.modus = 2;
    }
    Dieser Code würde im IE6 so funktionieren. Aber Firefox mag das überhaupt nicht. Kann jemand helfen?

  • #2
    Re: [JS] Eigene Properties in Objekten (FireFox, IE, usw.)

    Wie kommst du denn auf die Idee, dass das gültiges HTML wäre, wenn du einfach eigene Attribute dazuerfindest?
    Was ein Browser nicht kennt, darf er ignorieren.

    Wenn dein Javascript auf dem Dokumentbaum aufsetzt, den der Browser aus deinem HTML erzeugt hat - dann wundere dich bitte nicht, wenn du dort keine Entsprechung für invalide Pseudo-Attribute findest.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Sehr informative Antwort. Wie ich sagte bin ich kein JS Experte und ich dachte man könne dies so machen im IE funktioniert es halt.

      Aber andere Antworten ist man von dir ja kaum gewohnt.

      Kommentar


      • #4
        er hat aber recht. modus als attribut existiert nicht. da mußt du die dtd ergänzen:
        PHP-Code:
        <DOCTYPE ...
        [
           <
        ATTLIST form modus CDATA #IMPLIED>
        ]

        gruß
        peter
        Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
        Meine Seite

        Kommentar


        • #5
          Dankeschön das ist eine Antwort womit ich etwas anfangen kann. Warum nicht immer so denn wahsaga wusste das ja anscheinend.

          Kommentar


          • #6
            Warum nicht so? Weil's ziemlicher Unfug ist.
            Die Standards für HTML 4.01 und XHTML 1.0 sind fertig, abgeschlossen, basta und finito.

            Wenn du die DTD jetzt "erweiterst" - dann erzeugst du damit irgendwas eigenes - aber es ist ganz bestimmt kein (X)HTML mehr.
            Wenn es von aktuellen Browsern verstanden wird, dann ist das reiner Zufall, und nichts worauf du dich verlassen kannst.
            Sowas kann man vielleicht mal in einer geschlossenen Umgebung einsetzen - aber auf's www sollte man sowas m.E. keinesfalls loslassen.


            Warum legst du die zusätzlichen Werte, die du nicht in HTML-Attributen abbilden kannst, denn nicht einfach auch woanders ab als im HTML?
            Auch JS-Code beispielsweise liesse sich ja dynamisch generieren (falls die Dynamik jetzt als Gegenargument kommen sollte) ...
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              Ich weiß das man es anders machen kann. Ich will auch nicht den Standard verändern. Mein neues Attribut soll nur halt von jedem Browser möglichst einfach ausgewertet werden können.

              Das Problem ist dass am Anfang mal ein kleiner PHP, HTML und Java Neuling da war und fleißig für einen einzigen Kunden eine Lösung programmiert hat. Mittlerweile ist diese Lösung aber doch ein wenig größer geworden. Damals wusste ich es nicht besser und hätte heute auch vieles anders gemacht. Aber das ganze System funktioniert im IE6. Diese Lösung wurde natürlich auch weiterverkauft und ein neuer Kunde hat nun die Voraussetzung gemacht das alles auch in Firefox usw. funktioniert. Und seitdem habe ich dieses Problem. Ich wollte nur wissen ob es möglich ist allen Browsern beizubringen dieses Attribut zu kennen und in JS verfügbar zu machen. Das es nicht Standard ist weiß ich selbst.

              BTW: Wenn VisualBasic jedes Attribut meiner Objekte was nicht VB Standard ist ignorieren würde was meinst du was bei MS loswär?
              Zuletzt geändert von PHP-Boernie; 11.10.2006, 14:22.

              Kommentar

              Lädt...
              X