Internet Explorer Javscript Sicherheitsabfrage / IE kennt CSS klassen nicht an

C3000

Mitglied
Hallo zusammen

Nachdem ich mit dem Problem (auch hier beschrieben) nicht weiter komme, hab ich mich daran gesetzt meine Seite IE kompatibel zu machen.

Dabei hab ich schon zu anfangs Startschwierigkeiten.
Der Internet Explorer frägt gleich zu beginn ob ich Javascript und ActiveX Elemente ausführen lassen möchte. Bei anderen Seiten geht das aber auch ohne, obwohl diese auch damit arbeiten.

Meine Sicherheitseinstellungen stehen auf Mittel.

----------------------------------------------------------------------------

Desweiteren hat der IE Probleme meinen generierten Dom- Elementen (die Klassen haben) die Attribute der Klassen zuzuordnen.

Ich suche schon seit heute morgen nach Hilfe und habe selbst keine Ahnung wie ich die Probleme lösen könnte.

Vielen dank für eure Mühe, und sorry das ich gleich 2 Threads innerhalb kurzer Zeit aufgemacht habe.

MfG

// EDIT

Das erste Problem hab ich durch Zufall gelöst. Wenn man seine Seite lokal aufruft, dann nutzt der IE wahrscheinlich eine andere Sicherheitseinstellung, als ich die Seite über meinen Webserver aufrief kam keine Fehlermeldung, allerdings nimmt er die CSS- Klassen immer noch nicht an. Sie stehen zwar als Attribut dar, aber die in der CSS beschriebenen Attribute werden nicht übernommen.

MfG
 
Wenn man seine Seite lokal aufruft, dann nutzt der IE wahrscheinlich eine andere Sicherheitseinstellung, als ich die Seite über meinen Webserver aufrief kam keine Fehlermeldung

Diese Sicherheitsabfrage bei lokalen Dateien kannst du deaktivieren:
Internetoptionen>Erweitert>Sicherheit>
Ausführen aktiver Inhalte in Dateien auf dem lokalen Computer zulassen
 
Könntest du bitte etwas mehr Code zeigen?

MfG

Hmm meinen ganzen Source hier zu posten würde nichts bringen aber hier mal nen ausschnitt:

Code:
document.getElementById('tabviewer').appendChild(
	    Builder.node("div", {id:this.id, className:"nTab", onclick:"changeTab(tabs[" +this.nr+ "])", Color:"white"}, [
	    	Builder.node("img", {id:this.id+"ico", src:"images/s.gif", style:"margin-right:7px;margin-bottom:-2px;"}),
	    	Builder.node("span", {id:this.id+"text"}, name), 
	    	Builder.node("img", {id:this.id+"close", alt:"Close", src:"images/close.png", className:"closeTab", onclick:"tabs["+this.nr+"].closeTab()"}),
	    	Builder.node("img", {id:this.id+"menu", alt:"Menu", src:"images/showModDown.GIF", className:"menuTab", onclick:"tabs["+this.nr+"].getIcons();"})
	    ])
    );

Der IE zeigt zwar an das die Elemente Klassen haben, übernimmt diese aber nicht aus der externen css.
Das ganze ist mit dem Framework scriptacolous realisiert. Dort gibt es eine Klasse Builder.

Hoffe das bringt euch weiter.

MfG
 
Ahhja,

das kenne ich.

In dem IE musst du die CSS Klassen nicht mit setAttribute setzen sondern mit element.className = "deineCssKlasse"

MfG

Vielen danke für deine Antwort. Du hattest recht, und nun funktioniert es auch.
Leider wusste ich das nicht, da ich den IE eigentlich nicht nutze.
Bedeutet dies dann, das ich die Builder Klasse nicht nutzen kann, wenn ich css Klassen übergeben muss, oder gibt es da eine Simple Lösung wie ich das Problem umgehe. Im Notfall kann man ja auch die Builder Klasse ein wenig umschreiben was ich aber nicht unbedingt machen will.

MfG
 
Du kannst, nach dem du den neuen Node erstellt hast, einfach auf das Node zugreifen und className setzen ;)

MfG

Aber ich speicher die Elemente ja nicht in einer variable, sie werden erzeugt und direkt eingebettet.

Code:
element1.appendChild(Builder.node("div"));

Da das neue div keine id hat und ich es nicht in einer Variable gespeichert habe kann ich ja nicht einfach drauf zugreifen, oder?

MfG
 

Neue Beiträge

Zurück