Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    coordinate mouse non funziona su firefox

    Ho un Div che deve cambiare posizione all'evento onmouseover di un testo.
    Codice PHP:
    [b][url="#"]DETTAGLI[/url][/b
    L'evento onmouseorver richiama la seguente funzione: MM_getMouseXY('Dettagli',event)
    il cui codice è:
    Codice PHP:
    function MM_getMouseXY(objIde) { //v9.0
       
    var obj nullwith (document){ if (getElementById)
      
    obj getElementById(objId); }
      
    //e = document.onmousemove;
      
      
    if (obj){   
      
          
    = (e) ? event;    
        
            var 
    asse_x e.clientX/*x,y della finestra*/
            
    var asse_y e.clientY;
            
    obj.style.left asse_x;
            
    obj.style.top asse_y;
      }
            
    alert("X= "+asse_x "; Y= "+asse_y)

    In explorer funziona tutto perfettamente.... in Firefox, Chrome (opera e safari non ho controllato ancora...) non funziona. L'alert mi da le coordinate corrette, quindi vengono trovate, ma non vengono assegnate al div... come mai?

    se serve, queste le caratteristiche css del div:
    Codice PHP:
    #Dettagli {
        
    position:absolute;    
        
    width:321px;
        
    height:326px;
        
    z-index:100;
        
    visibility:hidden;

    Rey
    La vita è un panaro, non sai mai quello che ti esce!
    photorealistic 3D rendering and animations and WEB Design

  2. #2
    Ciao,

    prova a sostituire queste tre righe:

    e = (e) ? e : event;
    var asse_x = e.clientX; /*x,y della finestra*/
    var asse_y = e.clientY;


    con:


    if(!e) e=window.event;
    var asse_x = (e.pageX)?e.pageX:e.clientX ;
    var asse_y =(e.pageY)?e.pageY:e.clientY ;


    ...fammi sapere!

  3. #3
    non ci posso credere....

    bisogna assegnare il valore in questo modo... ho scoperto solo ora....

    Codice PHP:
            obj.style.left asse_x+'px';
            
    obj.style.top asse_y+'px'
    comunque provo subito anche la tua soluzione. ora ti dico.

    grazie mille
    Rey
    La vita è un panaro, non sai mai quello che ti esce!
    photorealistic 3D rendering and animations and WEB Design

  4. #4
    provato. Funziona bene anche la tua. e penso che la userò, grazie mille.

    ma anche con la tua soluzione è importante assegnare i valori in questo modo:

    Codice PHP:
    obj.style.left asse_x+'px';
    obj.style.top asse_y+'px'
    grazie ancora mille
    Rey
    La vita è un panaro, non sai mai quello che ti esce!
    photorealistic 3D rendering and animations and WEB Design

  5. #5
    Scusa,

    mi era proprio sfuggito il +"px";
    in effetti io solitamente trasformo prima in intero asse_x ed asse_y e poi aggiungo +"px"


    var asse_x = parseInt( (e.pageX)?e.pageX:e.clientX );
    var asse_y = parseInt( (e.pageY)?e.pageY:e.clientY );



    ...ma l'importante è che funzioni!

  6. #6
    Ho un'altro quesito sull'argomento coordinate mouse.

    Ho visto che con clientX becchi le coords del mouse all'interno dell'area html...
    con screenX becchi quelle del mouse rispetto allo schermo...

    ma se voglio le coordinate del mouse rispetto alla finestra?
    cioè se io rimpicciolisco il browser, mi compaione le scroll bar, le sposto tutte in basso e porto il cursore allo 0,0 della finestra del browser, con clientX non mi da 0,0, mi da la posizione rispetto all'inizio della pagina html... come faccio invece a ricavare il mio 0,0?


    non so se sono stato chiaro
    :master:
    Rey
    La vita è un panaro, non sai mai quello che ti esce!
    photorealistic 3D rendering and animations and WEB Design

  7. #7
    Ho visto solo adesso che sei anche tu di Genova!

    Se ho ben capito è sufficiente considerare i valori che assumono le scrollbar
    e sottrarli alla posizione asse_x,asse_y del mouse.

    slx=parseInt(document.body.scrollLeft);
    sly=parseInt(document.body.scrollTop);

    Ho visto il link... anch'io ho lavorato molto nella grafica 2D e 3D!!!


    Saluti

  8. #8
    Ho fatto degli alert, ma mi da sempre 0... come mai?

    non sono gran che io in javascript.


    belin... pensa te sti genovesi...
    Rey
    La vita è un panaro, non sai mai quello che ti esce!
    photorealistic 3D rendering and animations and WEB Design

  9. #9
    grazie mille... funziona facendo:

    var sly=parseInt(document.documentElement.scrollTop);
    eccetera. grazie
    Rey
    La vita è un panaro, non sai mai quello che ti esce!
    photorealistic 3D rendering and animations and WEB Design

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.