![]() |
SELFHTML Forumsarchiv |
|
|
Die folgende Nachricht zum Thema stammt von: T-Rex, 30. 10. 2008, 23:51
Hoi Leute,
hab folgenden Code (vereinfacht):
function setStyle(eigenschaft,wert)
{
var obj = document.getElementById('test');
eval("obj.style."+eigenschaft+"= wert;" );
}
setStyle("display","none");
Ich möchte mit setStyle eine übergebene Eigenschaft stylen. Im Firefox funktioniert das wunderbar, bloß der IE mal wieder :(.
Es kommt die Fehlermeldung: "Die display Eigenschaften wurden nicht gefunden. Ungültiges Argument."
Hab schon per Try and Error einige Verrückt Sachen probiert...hat aber nix gebracht.
Hilfe...:(
Gruß zur Mitternacht
T-Rex
Die folgende Nachricht zum Thema stammt von: molily, 31. 10. 2008, 00:05
eval() ist in dem Fall unnötig -- allgemein kann und sollte man auf eval() bis auf gewisse Ausnahmefälle verzichten. Wenn du eine Eigenschaft ansprechen willst, dessen Name du in einem String vorliegen hast (z.B. "display"), dann kannst du einfach notieren:
obj.style["display"] = wert;
Mit Variable dann:
obj.style[eigenschaft] = wert;
Löst das im IE ebenfalls einen Fehler aus? Würde mich wundern.
Mathias
--
JavaScript-Erweiterung für das SELFHTML-Forum
Die folgende Nachricht zum Thema stammt von: T-Rex, 31. 10. 2008, 00:20
»» eval() ist in dem Fall unnötig -- allgemein kann und sollte man auf eval() bis auf gewisse Ausnahmefälle verzichten. Wenn du eine Eigenschaft ansprechen willst, dessen Name du in einem String vorliegen hast (z.B. "display"), dann kannst du einfach notieren:
»»
»» obj.style["display"] = wert;
»»
»» Mit Variable dann:
»»
»» obj.style[eigenschaft] = wert;
»»
»» Löst das im IE ebenfalls einen Fehler aus? Würde mich wundern.
»»
»» Mathias
Mensch so ein Mist....
hätte auch so funktioniert nur in wert stand "false" und damit kann der IE anscheinend nix anfangen.
Werde trotzdem deinen Rat beherzigen. Ich mag eval() auch nicht wirklich, aber ich wußte mir nicht anders zu helfen.
Danke Mathias!
Die folgende Nachricht zum Thema stammt von: Cheatah, 31. 10. 2008, 09:24
Hi,
»» hätte auch so funktioniert nur in wert stand "false" und damit kann der IE anscheinend nix anfangen.
natürlich nicht. Der Wert ist für die Eigenschaft ungültig. Auch wenn man Code per JavaScript erzeugt, ist Validität das Alpha und Omega.
Cheatah
--
X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
X-Will-Answer-Email: No
X-Please-Search-Archive-First: Absolutely Yes
© 1998-2008
Impressum, Software: Classic Forum