php.de

Zurück   php.de > Webentwicklung > JavaScript, Ajax und mehr

JavaScript, Ajax und mehr dynamisches Scripten und Interaktion auf Clientebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 08.10.2010, 10:01  
Benutzer
 
Registriert seit: 18.02.2009
Beiträge: 38
floripipo ist zur Zeit noch ein unbeschriebenes Blatt
Standard DOM Event löschen

Moin zusammen

Ich hab ein kleines aber gravierendes Problem:

Ich vergeb einem Div am Anfang einen onClick-Event. Dies folgendermassen:

Code:
div_tri.addEventListener('click',eventReturner('langplus','Languages_Factories_inwork_tri'),false);
Nun möchte ich diesen Löschen. Versucht habe ich es schon auf die folgenden Arten:

Code:
delete document.getElementById('Languages_Factories_' + langfacid + '_tri').onClick;

document.getElementById('Languages_Factories_' + langfacid + '_tri').onClick = null;

document.getElementById('Languages_Factories_' + langfacid + '_tri').removeEventListener('click',eventReturner('langplus','Languages_Factories_inwork_tri'),false);
Leider hat keine einzige Methode Wirkung gezeigt, es gab aber auch keine Syntaxfehler oder so (FF). Was mache ich falsch?

Danke für die Hilfe und freundliche Grüsse

Flo
floripipo ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 08.10.2010, 10:44  
Moderator
 
Benutzerbild von Chriz
 
Registriert seit: 11.05.2008
Beiträge: 6.266
Chriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer Anblick
Standard

Spontan hätte ich es jetzt so wie du mit der Zuweisung = null oder so geschrieben:
Code:
document.getElementById('Languages_Factories_' + langfacid + '_tri').onClick = function() {};
Ein Framework verwendest du nicht?
__________________
"Nuschel ich?" - "Was?"
Chriz ist offline   Mit Zitat antworten
Alt 08.10.2010, 10:49  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

mal den Feuerkäfer gefragt?
cycap ist offline   Mit Zitat antworten
Alt 08.10.2010, 10:58  
Benutzer
 
Registriert seit: 18.02.2009
Beiträge: 38
floripipo ist zur Zeit noch ein unbeschriebenes Blatt
Standard

also, ich möchte den Event eben wirklich raus haben, nicht "nullen".

FireBug sagt mir auch nix interessantes ... der onClick-Event wird zT. gar nicht aufgeführt, obwohl er existiert, und manchmal ändert sich einfach nix, trotz richtiger Syntax...

EDIT: Nein, ich brauche kein Framework, dies ist auch nicht in Erwägung zu ziehen.
floripipo ist offline   Mit Zitat antworten
Alt 08.10.2010, 11:38  
Benutzer
 
Registriert seit: 18.02.2009
Beiträge: 38
floripipo ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ich hab glaub was gefunden, und zwar muss der Wurm irgendwo drin liegen, wo der Event erstmals gesetzt wird.

Das ganze sieht so aus...

Code:
var div_tri = document.createElement('div');
            div_tri.setAttribute('id','Languages_Factories_inwork_tri');
            div_tri.setAttribute('class','triangles');
            div_tri.addEventListener('click',eventReturner('langplus','Languages_Factories_inwork_tri'),false);
            alert( div_tri.onclick ); //###Dieses Alert gibt mir 'undefined' zurück!!###
            div_tri.innerHTML = '▽';
            

document.getElementById('Languages_Factories_value').appendChild(div_tri);
Die Funktion eventReturner sieht so aus:

Code:
function eventReturner( type, param1) { 
            //einige ifs und else ifs, dann...
            else if(type == 'langplus') {
                alert('langplus');
                return function() {
                    showhideModules(param1);
                };
            }
}
Und showHideModules() funktioniert prima, daran kanns nicht liegen.

Sorry, wenn ich euch mit Problemen zudecke, aber ich komm echt nicht weiter, nicht mal mein Chef hat was gefunden...

THX, flo

EDIT: Muss anfügen, der onClick-Event FUNKTIONIERT! er wird nur nirgends angezeigt. Auch firebug zeigt nix an, und nun kann mit dem Event nicht korrekt gearbeitet werden (eben zB. löschen).
floripipo ist offline   Mit Zitat antworten
Alt 08.10.2010, 14:11  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Du musst m.W. beim Entfernen die gleiche Funktionsreferenz benutzen, wie beim Hinzufügen.
Deine Funktion eventReturner erzeugt aber jedes mal ein neues (anonymes) Funktionsobjekt.
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Alt 08.10.2010, 17:18  
Benutzer
 
Registriert seit: 18.02.2009
Beiträge: 38
floripipo ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von ChrisB Beitrag anzeigen
Du musst m.W. beim Entfernen die gleiche Funktionsreferenz benutzen, wie beim Hinzufügen.
Deine Funktion eventReturner erzeugt aber jedes mal ein neues (anonymes) Funktionsobjekt.
Moin Chris

Ich habs nun umgangen, da ich darauf aufmerksam geworden bin, dass ich es viel zu kompliziert mache, und so muss ich nun keinen Event mehr löschen. Allerdings habe ich plötzlich Probleme bei einem Event erstellen, was bisher reibungslos geklappt hat. Ich werde da mal einen neuen Post erstellen... ok?
floripipo ist offline   Mit Zitat antworten
Alt 08.10.2010, 17:33  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

eventReturner wird IMHO so auch nicht funktionieren, weil zur Laufzeit die Closure-Funktion, die Du zurückgibst, die Parameter nicht mehr hat.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Tabellenzeile erstellen und löschen Buschdieb JavaScript, Ajax und mehr 1 18.11.2009 14:41
MySql Tabellenzeile per Link löschen Q-Meax PHP Tipps 2009 8 03.10.2009 13:30
variable mit onclick an php drombusch PHP Tipps 2009 8 30.08.2009 14:45
Event: User Regestrierung in die Datenbank??? Dunkelelf9 Datenbanken 2 22.12.2008 15:49
Vor dem löschen abfragen ob man wirklich löschen will PHP Tipps 2005-2 1 05.09.2005 11:54
MySQL/PHP: Löschen von Datensätzen ajo_silent PHP Tipps 2005-2 8 03.08.2005 17:00
[FRAGE] Datein per PHP löschen. PHP Tipps 2005 21 11.05.2005 19:36
[Erledigt] Sicherheitsabfrage beim Löschen aus DB PHP Tipps 2005 6 05.04.2005 10:24
server probleme datei löschen Rotti PHP Tipps 2004-2 7 30.12.2004 13:51
Datei löschen mit unlink PHP Tipps 2004-2 4 30.11.2004 00:36
[Erledigt] probleme mit event datenbank Datenbanken 1 04.09.2004 00:30
kompletten Ordner löschen??? 18inch PHP Tipps 2004 5 03.09.2004 09:52
Datensatz löschen: DOM Event löschen? PHP Tipps 2004 9 09.06.2004 01:44
Prob beim Löschen von Cookies PHP Tipps 2004 4 07.06.2004 20:58

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
javascript event löschen, javascript events löschen, event löschen javascript, domevent, javascript delete event, javascript event entfernen, javascript event delete, event javascript löschen, js event löschen, onclick event löschen, html dom add onclick event, java script event löschen, javascript alle events löschen, javascript event funktion entfernen, javascript events verwefen, alle events löschen javascript, js click event löschen, javascript eventhandler löschen, javascript ereignisse löschen, js events löschen

Alle Zeitangaben in WEZ +2. Es ist jetzt 10:03 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum