Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]2310[/thread]

Problem mit onclick Attribut generierung im IE



<< >> 7 Einträge, 1 Seite
Danwe
 2006-09-05 14:40
#24870 #24870
User since
2006-06-09
76 Artikel
BenutzerIn
[default_avatar]
Hi,

ich habe einen Link a href="#" für diesen möchte ich ein onclick Attribut in JS generieren, dazu gehe ich so vor:

Code: (dl )
refNode.setAttribute("onclick", "setActiveStyleSheet('" + refStyle + "'); changeRefAttributes(); return false;");


Aber irgendwie schluckt der IE das onclick nicht, alle anderen Browser machens. Ich generiere auch noch einen Titel, dieser wird vom IE normal generiert:
Code: (dl )
refNode.setAttribute("title", refTitle);


Ich habe auch mal probiert einfach eine message bei onclick mit alert auszugeben, auch das funktioniert nur in anderen Browsern!

Hat jemand eine Idee woran das liegt? Direktzugriff mit refNode.onclick will auch nicht so recht, weis auch garnicht ob das mit onclick gehen sollte!?

/modedit: Codetags verwenden\n\n

<!--EDIT|GwenDragon|1157456054-->
GwenDragon
 2006-09-05 15:41
#24871 #24871
User since
2005-01-17
14533 Artikel
Admin1
[Homepage]
user image
Warum verwendest du kein
Code: (dl )
1
2
3
element.addEventListener('click', function (evt) {
   // Verarbeitung des Ereignisses
}, false);


/EDIT: Ach nee, der dumme IE kann ja wieder kein DOM 2.

Also, schau mal dort:
http://www.mediaevent.de/javascript/event_listener.html\n\n

<!--EDIT|GwenDragon|1157456826-->
die Drachin, Gwendolyn


Unterschiedliche Perl-Versionen auf Windows (fast wie perlbrew) • Meine Perl-Artikel

Danwe
 2006-09-05 16:40
#24872 #24872
User since
2006-06-09
76 Artikel
BenutzerIn
[default_avatar]
Das kannte ich noch garnicht^^ Aber wie mir scheint, hilft mir das ebenfalls nicht weiter, hast du ja selbst geschrieben.
Habe keinen Plan
GwenDragon
 2006-09-05 16:59
#24873 #24873
User since
2005-01-17
14533 Artikel
Admin1
[Homepage]
user image
Könnte so gehen (ohne Gewähr):
Code: (dl )
refNode.attachEvent( "onclick", function () {setActiveStyleSheet('" + refStyle + "'); changeRefAttributes(); return false;} );


Mich ärgert die MS-eigene Standardsuppe sowieso.\n\n

<!--EDIT|GwenDragon|1157461229-->
die Drachin, Gwendolyn


Unterschiedliche Perl-Versionen auf Windows (fast wie perlbrew) • Meine Perl-Artikel

Danwe
 2006-09-06 15:06
#24874 #24874
User since
2006-06-09
76 Artikel
BenutzerIn
[default_avatar]
Ne, das funktioniert wohl nur mit dem IE, sonderlösung.
Ich denke ich muss wohl dem IE eine Sonderlösung bieten, sonst geht es nicht :-(

Nicht mal das funktioniert:
Code: (dl )
1
2
3
  oTagAttr = document.createAttribute("onclick");
oTagAttr.nodeValue="alert('test');";
oTag.setAttributeNode(oTagAttr);

Das steht an der Stelle wo ich die Attribute für das noch neue Linkobjekt erstelle u. dann ins DOM einfüge. Mit allen anderen Attributen macht ers, z.B. "title", so funktionierts wieder nur in anderen Browsern :-(
ich finde dafür sollte man Microsoft auf Schadensersatz verklagen können *g*\n\n

<!--EDIT|Danwe|1157541238-->
GwenDragon
 2006-09-06 17:20
#24875 #24875
User since
2005-01-17
14533 Artikel
Admin1
[Homepage]
user image
Du musst Abfrage, um welchen Browser es sich handelt (Browserweiche, UserAgent), und dann den dazugehörigen Code aufrufen.
die Drachin, Gwendolyn


Unterschiedliche Perl-Versionen auf Windows (fast wie perlbrew) • Meine Perl-Artikel

Danwe
 2006-09-06 18:25
#24876 #24876
User since
2006-06-09
76 Artikel
BenutzerIn
[default_avatar]
Jup, habe ich gemacht :)
<< >> 7 Einträge, 1 Seite



View all threads created 2006-09-05 14:40.