ShockWaveRideR: Hey Struppi da tauchen noch Fehler auf!

Moin!
ich poste grad nochmal den code wie er jetzt bei mir is damit ich genau makieren kann was die script-console mir sagt und was ich getan hab!Zeile 57 is der derzeitige fehler!
Error: this.over has no properties
Source File: http://nic-ultra/mouse_over.js
Line: 57

var et = ".gif";
var folder = "";

var over = "_on";
var stay = "_stay";
var down = "_down";

var _click_ = null;
var old_onload = window.onload;
var old_onresize = window.onresize;

window.onresize = on_resize;

function start_mouse_over(doc) {
 if(!doc) doc = this.document;
 if(!doc.images) return;
 for(var i = 0; i < doc.images.length; i++) {
  if(doc.images[i].name.indexOf('button') == 0)
   addEventsToImage(doc.images[i]);
  }
  if(old_onload) old_onload();
}
function addEventsToImage(img) {

img.onmouseover = on_mouse_over;
 img.onmouseout = on_mouse_out;
 img.onmousedown = on_mouse_down;
 img.onclick = on_click;

img.stay = new Image();
 img.stay.img = img;
 img.stay.onerror = function() { this.img.onclick = null;}
 img.stay.src = folder + img.name + stay + et;

img.stay = new Image();
 img.stay.img = img;
 img.stay.onerror = function() { this.img.onmouseover = null;}
 img.stay.src = folder + img.name + over + et;

img.stay = new Image();
 img.stay.img = img;
 img.stay.onerror = function() { this.img.onclick = null;}
 img.stay.src = folder + img.name + down + et;

img.out = img.src;
 if(window.name ==img.name) img.onclick();
}
function on_mouse_down()
{
    if(_click_ == this) return false;
    this.src = this.down.src;
    return true;
}
function on_mouse_over()
{
    if(_click_ == this) return false;
    this.src = this.over.src;-------------------zeile 57, doch wiso keine
    return true;                                  Properties????????
}
function on_mouse_out()
{
    if(_click_ == this) return false;

this.src = this.out;
    return true;
}
function on_click()
{
    if(_click_ == this) return false;
    this.src = this.stay.src;
    if(_click_) _click_.src = _click_.out;
    _click_ = this;
    window.name = this.name;
    return true;
}
function on_resize()
{
    if(_click_) _click_.src = _click_.stay.src;
    if(old_onresize) old_onresize();
}

das window.onload hab ich rausgenommen und dafür den aufruf ins body-tag gesetzt!

Es wird noch nix in den html code eingesetzt, oder geht das wegen dem zeile 57 fehler noch nicht?

die var _click_ war bei mir noch so geschrieben "_click"!
Was ist da mit der zeile 57 los? Der gute Cheatah hat mir schonmal nentipp zur interpretation von den scriptfehlern gegeben, und zwar das man immer etwas voher anfangen muss zu gucken aber das hilft mir hier absolut nicht weiter!
Danke für die Hilfe! Gäb es Leute wie dich nicht würden bestimmt viele newbies vor ihren büchern verzweifeln!
mfg shockwaverider

  1. Hallo,

    Gäb es Leute wie dich nicht würden bestimmt viele newbies vor ihren büchern verzweifeln!

    Das geht nicht, denn gäbe es Leute wie ihn nicht, gäbe es früher oder später zwangsläufig nur Leute wie ihn, weil dann auch die »Newbies« zu selbständigem Lernen gezwungen würden und das Larvenstadium(tm) unweigerlich verlassen müssten. <tvkaiser>Ein Teufelskreis.</tvkaiser>

    Mathias

    --
    »In Anbetracht des extrem schädlichen Einflusses, der von diesem Forum ausgeht, wär's natürlich besser, es so weit zu bringen, dass es in sich kollabiert.«<img src="http://w0.extreme-dm.com/0.gif?tag=saftnase&j=n" border="0" alt="">
    1. Ich mag konstruktive Leute! mehr sag ich dzu net!

      1. Hallo,

        Ich mag konstruktive Leute! mehr sag ich dzu net!

        Tja ja. Ich habe mich nicht einmal zu deiner Frage geäußert, weder destruktiv noch konstruktiv, also wüsste ich nicht, was du an meiner Antwort als Antwort auf deine banale Frage zu kritisieren hast, da sie sich nur auf einen bestimmten Teil deines Postings bezog, und das Recht auf eine Antwort darauf nehme ich mir heraus, selbst und gerade wenn ich deine Frage außer Acht lasse.

        Struppi ist, wie alle anderen hier, nicht dein Privatlehrer und lässt sich nicht mit »Hey Struppi« im Topic herbeipfeifen. Wenn du es dann noch mit einer selbstgefälligen Lobhudelei à la »es ist toll, dass es euch gibt, da ihr mir die Arbeit abnehmt« garnierst, musst du damit rechnen, dass andere sich daran stoßen.

        Und biege gefälligst keine Menscheleien in »Meinung« um, das ist nämlich unmöglich. Bitte ziehe die Sache nicht ins Lächerliche, wir sind schließlich nicht zum Vergnügen hier! (dsf 5.4)

        Grüße,
        Mathias

        --
        Mehr sag ich dazu net!
  2. Moin!
    ich poste grad nochmal den code wie er jetzt bei mir is damit ich genau makieren kann was die script-console mir sagt und was ich getan hab!Zeile 57 is der derzeitige fehler!

    Du hast was geändert.

    function addEventsToImage(img) {

    img.onmouseover = on_mouse_over;
     img.onmouseout = on_mouse_out;
     img.onmousedown = on_mouse_down;
     img.onclick = on_click;

    img.stay = new Image();
     img.stay.img = img;
     img.stay.onerror = function() { this.img.onclick = null;}
     img.stay.src = folder + img.name + stay + et;

    img.stay = new Image();
     img.stay.img = img;
     img.stay.onerror = function() { this.img.onmouseover = null;}
     img.stay.src = folder + img.name + over + et;

    img.stay = new Image();
     img.stay.img = img;
     img.stay.onerror = function() { this.img.onclick = null;}
     img.stay.src = folder + img.name + down + et;

    img.out = img.src;
     if(window.name ==img.name) img.onclick();
    }

    Diese Funktion sieht bei mir so aus:
    function addEventsToImage(img)
    {
        ///////////////////////////////////////////////////////
        // Die Events
        img.onmouseover = on_mouse_over;
        img.onmouseout  = on_mouse_out;
        img.onmousedown = on_mouse_down;
        img.onclick     = on_click;

    ///////////////////////////////////////////////////////
        // Bild vorladen
        img.stay = new Image();
        img.stay.img = img;
        img.stay.onerror = function() { this.img.onclick = null;}
        img.stay.src = folder + img.name + stay + ext;

    img.over = new Image();
        img.over.img = img;
        img.over.onerror = function() { this.img.onmouseover = null;}
        img.over.src = folder + img.name + over + ext;

    img.down = new Image();
        img.down.img = img;
        img.down.onerror = function() { this.img.onmousedown = null;}
        img.down.src = folder + img.name + down + ext;

    ///////////////////////////////////////////////////////
        // die ürsprüngliche Grafik sichern.
        img.out = img.src;

    ///////////////////////////////////////////////////////
        // wurde breits auf die Grafik geklickt?
        if(window.name == img.name) img.onclick();
    }

    Danke für die Hilfe! Gäb es Leute wie dich nicht würden bestimmt viele newbies vor ihren büchern verzweifeln!

    Danke ;-)

    Ich war ja auch mal Newbie und oft verzweifelt. Doch damals gab's kein Internet und Mailboxen waren für mich viel zu teuer und daher war angewiesen auf Bücher (so ich sie mir den leisten konnte), was oft genervt hat. Insofern ist das für mich selbstverständlich, da ich mir sowas (wie hier oder auch Newsgroups) früher  immer gwünscht hatte.
    Wobei ich den Computer halt auch als Spielzeug sehe und immer am rumprobieren bin, da glücklicherweise nur nebenbei damit Gerld verdiene.

    Struppi.

    1. Moin!
      Ah ja! Ich hab die var ext in et umbenannt weil ich in einer andern function .htm unter ext global gespeichert habe!Doch das ist doch nicht schlimm wenn ich an allen stellen wo das vorkommt änder!
      Ansonsten fällt mir nur auf das ich da onclick statt onmousedown sag! Wird sofort geändert! Aber der fehler hängt da doch nicht dran oder?
      Ich weiß was no properties heißt aber kann mir absolut nicht vorstelln warum?
      hier nochmal der fehler:

      Error: this.over has no properties
      Source File: http://nic-ultra/mouse_over.js
      Line: 57

      Finde deine Einstellung extrem korrekt! Wenn bloß jeder so wär(also so hilfsbereit)! mfg shockwaverider

      1. Hoi nochmal!
        Ich hab das jetzt grad geändert! Doch ich bekomm nur einen Fehler mehr wenn ich neu lade! und zwar:

        Error: too much recursion

        un dann halt je einmal mit der mouse über den Button:

        Error: this.over has no properties
        Source File: http://nic-ultra/mouse_over.js
        Line: 57

        mfg shockwaverider

      2. Moin!
        Ah ja! Ich hab die var ext in et umbenannt weil ich in einer andern function .htm unter ext global gespeichert habe!Doch das ist doch nicht schlimm wenn ich an allen stellen wo das vorkommt änder!

        Nein, du hast noch mehr geändert kuck mal genau hin.

        Struppi.