Seite 1 von 4 1234 LetzteLetzte
Ergebnis 1 bis 10 von 34

Thema: curser bestimmung!!

  1. #1
    Forum Guru
    Registriert seit
    28.12.2004
    Ort
    Ringgenberg(bei Interlaken) / Schweiz
    Beiträge
    4.787
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard curser bestimmung!!

    Dieses Script bestimmt die curserposition im IE aber im Mozilla funst es nicht

    wiso???


    Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http&#58;//www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <title>Unbenanntes Dokument</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    
    <script language="javascript">
    <!--
    function test&#40;&#41;
    &#123;
     var isNav = &#40;navigator.appName.indexOf&#40;"Netscape"&#41; !=-1&#41;;
     
     x = &#40;isNav&#41; ? e.pageX &#58; event.clientX + document.body.scrollLeft;
     y = &#40;isNav&#41; ? e.pageY &#58; event.clientY + document.body.scrollTop;
     alert&#40;"X&#58;" + x + " - Y&#58;" + y&#41;;
    &#125;
    -->
    </script>
    </head>
    
    <body>
    
    
    </p>
    <a onClick="test&#40;&#41;;">TEST</a>
    </body>
    </html>
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Kaiserliche Hoheit
    Registriert seit
    22.02.2005
    Beiträge
    1.558
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Das liegt an der unterschiedlichen Event-Behandlung. Für den FF und den NN4 funktioniert dies ebenso unterschiedlich. Ich hatte dieses Problem vor ~2 Monaten und hab mir dann zwei Funktionen gebastelt, die das je nach verwendetem Browser passend einrichten und abfragen.
    Dieses Codebeispiel stell ich hiermit allen zur Verfügung.
    Code:
     ...
      function getMouseXY&#40;e&#41; &#123;
        if &#40;window.event&#41; &#123; // IE
          mouseX = event.clientX;
          mouseY = event.clientY;
        &#125;
        else &#123;
          if &#40;document.layer&#41; &#123; // NN4
            mouseX = e.pageX;
            mouseY = e.pageY;
          &#125;
          else &#123; // Moz
            mouseX = e.clientX;
            mouseY = e.clientY; 
          &#125;
        &#125;
        return new Array&#40;mouseX, mouseY&#41;;
      &#125;
      //***********************************
      
      function initEventManagement&#40;&#41; &#123;
        // Event-Handler installieren
        if&#40;window.event&#41; &#123; // IE
          document.onmousemove = showMouseXY;
        &#125;
        else &#123;
          if&#40;document.layer&#41; &#123; // NN4
            document.captureEvents&#40;Event.MOUSEMOVE&#41;;
            document.onmousemove = showMouseXY;
          &#125;
          else &#123; // Moz
            document.addEventListener&#40;"mousemove", showMouseXY, false&#41;;
          &#125;
        &#125;
        //*********************************
        
        window.onload = initEventManagement;
    ...
    Als Rückgabewert erhält man ein Array mit 2 Elementen, die jeweils den X- & Y-Wert repräsentieren.
    "Carpe Diem" powered by positiv Feelings

  3. #3
    Forum Guru
    Themenstarter

    Registriert seit
    28.12.2004
    Ort
    Ringgenberg(bei Interlaken) / Schweiz
    Beiträge
    4.787
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Das funktionier so leider nicht.

    kannst du mir sagen warum ???

    Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http&#58;//www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <title>Unbenanntes Dokument</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
    
    <body>
    
    <script language="javascript">
    <!--
      function getMouseXY&#40;e&#41; &#123;
        if &#40;window.event&#41; &#123; // IE
          mouseX = event.clientX;
          mouseY = event.clientY;
        &#125;
        else &#123;
          if &#40;document.layer&#41; &#123; // NN4
            mouseX = e.pageX;
            mouseY = e.pageY;
          &#125;
          else &#123; // Moz
            mouseX = e.clientX;
            mouseY = e.clientY;
          &#125;
        &#125;    
    
        alert&#40;mouseX+"|"+mouseY&#41;;
        // return new Array&#40;mouseX, mouseY&#41;;
      &#125;
      //***********************************
     
      function initEventManagement&#40;&#41; &#123;
        // Event-Handler installieren
        if&#40;window.event&#41; &#123; // IE
          document.onmousemove = showMouseXY;
        &#125;
        else &#123;
          if&#40;document.layer&#41; &#123; // NN4
            document.captureEvents&#40;Event.MOUSEMOVE&#41;;
            document.onmousemove = showMouseXY;
          &#125;
          else &#123; // Moz
            document.addEventListener&#40;"mousemove", showMouseXY, false&#41;;
          &#125;
        &#125;
        //*********************************
    
        window.onload = initEventManagement;
    -->
    </script>
    
    
    
    </p>
    <a onClick="getMouseXY&#40;&#41;">TEST</a>
    </body>
    </html>

  4. #4
    Kaiserliche Hoheit
    Registriert seit
    22.02.2005
    Beiträge
    1.558
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Also ich habe das JS in ner Datei (sagen wir mal mousexy.js) gepackt und binde die dann so ein
    Code:
    <script type="text/javascript" src="mousexy.js"></script>
    Das steht bei mir auch im BODY.

    BTW: Verwende bei der Initialisierung von JS bitte das gültige Attribut type="text/javascript". Das language ist veraltet, aber kann mit stehen bleiben.
    "Carpe Diem" powered by positiv Feelings

  5. #5
    Forum Guru
    Themenstarter

    Registriert seit
    28.12.2004
    Ort
    Ringgenberg(bei Interlaken) / Schweiz
    Beiträge
    4.787
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    ist das gleiche in grün.

    da ich immer beim onlick die fehlermeldung bekome objekt erwartet

    Code:
    onClick="getMouseXY&#40;&#41;;"
    oder muss ich noch was übergeben ??

    das e (event) ist doch eigentlich nur die posi der mous oder liege ich da falsch???

  6. #6
    Forum Guru
    Themenstarter

    Registriert seit
    28.12.2004
    Ort
    Ringgenberg(bei Interlaken) / Schweiz
    Beiträge
    4.787
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    jetzt ghet es im IE

    du hast eine klammer vergessen


    Code:
      function initEventManagement&#40;&#41; &#123;
        // Event-Handler installieren
        if&#40;window.event&#41; &#123; // IE
          document.onmousemove = showMouseXY;
        &#125;
        else &#123;
          if&#40;document.layer&#41; &#123; // NN4
            document.captureEvents&#40;Event.MOUSEMOVE&#41;;
            document.onmousemove = showMouseXY;
          &#125;
          else &#123; // Moz
            document.addEventListener&#40;"mousemove", showMouseXY, false&#41;;
          &#125;
        &#125;
        //*********************************
        &#125;
        window.onload = initEventManagement;
    die letzt geschweifte

    oder wie sieht es bei dir aus ??

  7. #7
    Kaiserliche Hoheit
    Registriert seit
    22.02.2005
    Beiträge
    1.558
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Ok die Funktion initEventManagement hatte eine } zu wenig. Die habe ich geändert.

    Hier also die fehlerbereinigte Version:
    Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http&#58;//www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <title>Unbenanntes Dokument</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
    
    <body>
    
    <script language="javascript" type="text/javascript">
    <!--
      function replaceElementHTML&#40;tagid, output&#41; &#123;
    	  var ref = document.getElementById&#40;tagid&#41;;
    	  ref.innerHTML = output;
      &#125;
      //***********************************
      
      function getMouseXY&#40;e&#41; &#123;
        if &#40;window.event&#41; &#123; // IE
          mouseX = event.clientX;
          mouseY = event.clientY;
        &#125;
        else &#123;
          if &#40;document.layer&#41; &#123; // NN4
            mouseX = e.pageX;
            mouseY = e.pageY;
          &#125;
          else &#123; // Moz
            mouseX = e.clientX;
            mouseY = e.clientY;
          &#125;
        &#125;   
    
        return new Array&#40;mouseX, mouseY&#41;;
      &#125;
      //***********************************
      
      function showMouseXY&#40;e&#41; &#123;
        // zeigt die Mauskoordinaten an
        var mXY = getMouseXY&#40;e&#41;;
        replaceElementHTML&#40;"info", mXY&#91;0&#93;+" &#58; "+mXY&#91;1&#93;&#41;;    // gibt die Mouse-Koord's aus
      &#125;
      //*********************************************
        
     
      function initEventManagement&#40;&#41; &#123;
        // Event-Handler installieren
        if&#40;window.event&#41; &#123; // IE
          document.onmousemove = showMouseXY;
        &#125;
        else &#123;
          if&#40;document.layer&#41; &#123; // NN4
            document.captureEvents&#40;Event.MOUSEMOVE&#41;;
            document.onmousemove = showMouseXY;
          &#125;
          else &#123; // Moz
            document.addEventListener&#40;"mousemove", showMouseXY, false&#41;;
          &#125;
        &#125;
      &#125;
      //*********************************
    
        window.onload = initEventManagement;
    -->
    </script>
    
    <div id="info" style="width=250px; height&#58;20px; position&#58;absolute; left&#58;20px; top&#58;30px;"> </div>
    </body>
    </html>
    "Carpe Diem" powered by positiv Feelings

  8. #8
    Forum Guru
    Themenstarter

    Registriert seit
    28.12.2004
    Ort
    Ringgenberg(bei Interlaken) / Schweiz
    Beiträge
    4.787
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    also wie gesagt im IE funst es.

    aber im mozilla net.

    Code:
    function getMouseXY&#40;e&#41;
    was bedeutet das e ???

  9. #9
    Kaiserliche Hoheit
    Registriert seit
    22.02.2005
    Beiträge
    1.558
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Der IE kann immer auf das allgemeine Objekt event zugreifen. Der FF übergibt an die showMouseXY das Event-Objekt. Deshalb muss es dort angegeben werden, da der Mozilla sonst keine Informationen über das Event ermitteln kann.

    Du meinst also den Mozilla-Browser, der sich vom FF unterscheidet?! Dachte die benutzen die gleiche Gecko-Engine...
    Baja ich mach mich mal schlau...
    "Carpe Diem" powered by positiv Feelings

  10. #10
    Kaiserliche Hoheit
    Registriert seit
    22.02.2005
    Beiträge
    1.558
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Also ich hab mir grad die Mozilla-Suite installiert und das Script getestet. Bei mir läuft das (erwartungsgemäß) ohne Probleme.
    Welche Version nutzt du und welche Fehlermeldung kannst du ermitteln?
    "Carpe Diem" powered by positiv Feelings

Ähnliche Themen

  1. Frage zu: Neutralisation - Bestimmung des Essigsäuregehaltes
    Von 00Jaxky00 im Forum Off Topic und Quasselbox
    Antworten: 0
    Letzter Beitrag: 06.04.2008, 20:46
  2. Bestimmung ganzrationaler Funktionen! Dringend!
    Von rockabilly_ballerina im Forum Off Topic und Quasselbox
    Antworten: 1
    Letzter Beitrag: 07.11.2006, 15:34
  3. curser im textfeld
    Von ines-2 im Forum HTML & CSS Forum
    Antworten: 9
    Letzter Beitrag: 26.06.2006, 09:31

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •