Archivlink: javarea.de Forum > JavaScript > funktion in funktion resetten
Vollständigen Link anzeigen: javarea.de Forum > JavaScript > funktion in funktion resetten

Pages: [1]

geschrieben von Eppi am 16.06.2006 - 13:15
hallo jungs,

nach den letzten wochen abstinenz (umzugbedingt) kann ich euch nun mit neuen fragen nerven *gg*

ich habe folgendes problem:
bei einem mausklick soll eine onmouseout funktion für das aktuelle element gesetzt werden. diese funktion ist mit einem timeout versehen. nach dem timeout wird etwas ausgeführt, was auch funktioniert. nun möchte ich danach jedoch den onmouseout-event gleich wieder zurücksetzen, ansonsten wird bei jedem weiteren onmouseout zeitversetzt die aktion ausgeführt. habt ihr eine idee wie ich die funktion innerhalb der funktion resetten kann? also so:

HTML-Quelltext
1: 
2: 
3: 
this.onmouseout = function() {
  setTimeout("aktion;this.onmouseout = function(){}", 500);
}


"this" wird jedoch innerhalb der funktion nicht als element erkannt.

gruß, paul

geschrieben von Eppi am 16.06.2006 - 13:26
also ich hab's jetzt so gelöst:
HTML-Quelltext
1: 
2: 
3: 
submenu[0][0].onmouseout = function() {
if (!d.d[3]) d.d[3] = setTimeout("if (!d.lock) d.view('d-pop', 'none');", 500);
}

so wird das timeout nur einmal ausgeführt. trotzdem wäre ich nachwievor an der lösung interessiert, die funktion selbst zu leeren.

gruß, paul

geschrieben von Micha am 18.06.2006 - 14:06
Hi,

in dem Du eine Instanz erzeugst.
HTML-Quelltext
1: 
2: 
3: 
4: 
5: 
6: 
function Class(){
  var Instanz = this;
  this.onmouseout = function() {
  setTimeout("aktion;Instanz.onmouseout = function(){}", 500);
  };
}


Vergleiche diesen Forumsbeitrag

Micha

geschrieben von Eppi am 18.06.2006 - 15:53
danke! und wieder dazugelernt :-)

gruß, paul


Powered by: JBB v.2.0.4 Copyright ©2000-2006, www.javarea.de.