script element richtig einbinden und for/event Attribut nutzen
Mike
- html
Hallo,
ich suchte eine Lösung für die Übergabe einer Variabel/Parameter an ein externes Script, ähnlich:
http://www.tutorials.de/javascript-ajax/355235-parameter-externe-js-datei-uebergeben.html
Die Idee gefiel mir ganz gut, doch dann stellte ich fest, dass das Universalattribut "id" gar <http://de.selfhtml.org/html/referenz/attribute.htm#universalattribute@title=nicht im Script-Tag rein darf>.
Somit entfällt dann wohl die Lösung auf diese Weise. Allerdings fand ich im Zusammenhang mit den erlaubten Script-Attributen einige, die ich noch nicht kannte und die leider auch nicht genauer im Selfhtml oder sonstwo erläutert werden. Speziell das for-Attribut und das event-Attribut wecken meine Neugierde. http://de.selfhtml.org/html/referenz/attribute.htm#script
Diese waren mir bisher unbekannt, eröffnen aber vielleicht neue Möglichkeiten, wenn ich die Funktionsweise richtig deute. Schade, dass es dazu keine konkreten Beispiele oder Ausführungen im Selfhtml gibt. Deshalb frage ich euch, bevor ich nun munter damit experimentiere, ob Ihr Beispiele dazu im Netz kennt und vor allem ob diese Attribute sowohl Browser-als auch zukunftssicher sind?
Gruss
Mike
Hallo!
Die SELFHTML-Dokumentation ist inhaltlich sehr veraltet und die Aussagen beziehen sich oftmals auf alte HTML-Versionen und alte Browser. Du solltest den Inhalt immer mit aktuelleren Quellen aus den letzten paar Jahren vergleichen. Die Dokumentation wird nicht mehr gepflegt, stattdessen gibt es ein Wiki.
Die aktuelle HTML-Version 5 unterstützt id-Attribute bei script-Elementen (normative Definition). Neben IDs gibt es noch andere Arten, um per JavaScript ein Element als DOM-Knoten zu fassen zu bekommen. Zum Beispiel eine Klasse. Es ist auch eine Logik möglich, die automatisch das zugehöre Script sucht, sodass keine weitere Kennzeichnung nötig wäre. Gegen ein ID-Attribut spricht aber auch nichts.
Allerdings fand ich im Zusammenhang mit den erlaubten Script-Attributen einige, die ich noch nicht kannte und die leider auch nicht genauer im Selfhtml oder sonstwo erläutert werden. Speziell das for-Attribut und das event-Attribut wecken meine Neugierde. http://de.selfhtml.org/html/referenz/attribute.htm#script
Das vergisst du am besten schnell wieder. Das war eine Erfindung von Microsoft für Event-Handling, die von keinem anderen Browser umgesetzt wurde. Diese Attribute waren auch nie standardisiert. Sie stehen in der Attributreferenz von SELFHTML, aber ohne wirklichen Grund.
Falls es dich interessiert, es wird hier kurz angesprochen: http://de.selfhtml.org/dhtml/modelle/microsoft.htm
Fast alles, was dort steht, ist aus heutiger Sicht praktisch irrelevant und nicht zum Gebrauch zu empfehlen. Aktuell ist Event-Handling gemäß W3C Events.
Grüße
Mathias
Korrektur, for und event waren Teil von HTML 4.01. Sie wurden aber nicht wirklich inhaltlich beschrieben, sondern nur »reserved for possible future use«. http://www.w3.org/TR/html401/sgml/dtd.html
Es gab dann keinen »future use«. HTML 5 kennt sie nicht dementsprechend mehr.
Mathias
@@molily:
nuqneH
HTML 5 kennt sie nicht dementsprechend mehr.
Du zum JavaScript-Yoda dich entwickelst, hmm.
Qapla'
Om nah hoo pez nyeetz, Gunnar Bittersmann!
„fachlich hilfreich“ zwar dafür gedacht nicht ist, aber es dennoch geklickt ich habe.
Matthias
Hallo Mike,
ich suchte eine Lösung für die Übergabe einer Variabel/Parameter an ein externes Script ...
kennt das Script seinen Dateinamen? Bei mir sucht das Script sein "Script-Tag" über seinen Dateinamen und wertet dann die Parameter aus.
Es gab hier auch mal eine Diskussion, wo die Meinung vertreten wurde, dass ein Script, wenn es nach dem Laden läuft, unter den Scripten das letzte ist, also
var scr = document.getElementsByTagName("script");
var me = scr[scr.length-1];
Ich habe das aber nicht weiter verfolgt oder getestet, da bei mir der Zugriff über den Dateinamen ausreicht.
Gruß, Jürgen
Dank an euch,
alle Fragen zu 100% beantwortet.
Gruss
Mike
Hallo Mike,
alle Fragen zu 100% beantwortet.
und wie hast du es jetzt gelöst?
Gruß, Jürgen
Hallo Jürgen,
und wie hast du es jetzt gelöst?
bei einer Lösung ging es mir ja nicht um das Ursprungsproblem, sondern um die mir unbekannten Attribute im script-Tag und meine Fragen diesbezüglich. Durch die Antworten hier habe ich verstanden, dass es wenig Sinn macht mit diesen Attributen zu experimentieren.
Darüber hinaus hast Du auch noch eine verbesserte Version zu der, im verlinkten Forum, ID-Lösung meines Ursprungsproblems geschrieben. Für mich habe ich allerdings doch einen anderen Weg gefunden, indem ich die Variabeln direkt im extra Script-Tag deklariere. Das erspart mir den Umweg den zb. src-wert zu splitten oder sonstwie eine Art $_GET(PHP)-Prozedur für Javascript zu erzeugen.
Beispiel:
<script type="text/javascript">var1 ='abc';var2 ='def'; </script>
<script type="text/javascript" src="test.js"></script>
Gruss
Mike