Visualizzazione risultati 1 fino 12 di 12

Discussione: Coordinate elemento, sono giuste cosi?

  1. #1
    Guest

    Predefinito Coordinate elemento, sono giuste cosi?

    Ragazzi io dovrei trovare le cooridinate di un ellemnto secondo voi cosi è giusto?

    Codice PHP:
    function nos(){

    var
    div1_X = e.pageX - document.getElementById("div1");
    var
    div1_y = e.pageY - document.getElementById("div1");

    /*Poi con ajax invio i dati ad una pagina php è li salvo*/

    }
    richiamata tramite un onclick...

  2. #2
    L'avatar di mycarlo
    mycarlo non è connesso Utente attivo
    Data registrazione
    06-10-2009
    Residenza
    $this->s50
    Messaggi
    467

    Predefinito

    Non credo si possa fare la sottrazione tra un numero ed un elemento!
    Al limite con una proprietà.

    Codice PHP:
    var div1_X = e.pageX - parseInt(document.getElementById("div").style.left.split("px")[0]); // rimuovo da style.left px e trasformo la stringa in intero.
    var div1_Y = e.pageY - parseInt(document.getElementById("div").style.top.split("px")[0]); // rimuovo da style.top px e trasformo la stringa in intero.
    Saluti!

  3. #3
    Guest

    Predefinito

    no, io non devo fare la sotrazzione, io devo ricavare la coordinata...ad esempio div1 x=60 y=100 poi mi creo un array e la salvo nel db...

  4. #4
    L'avatar di mycarlo
    mycarlo non è connesso Utente attivo
    Data registrazione
    06-10-2009
    Residenza
    $this->s50
    Messaggi
    467

    Predefinito

    E allora il meno cosa fa??? Somma?

    Il codice sopra è quello giusto.

    Saluti!

  5. #5
    Guest

    Predefinito

    Quindi facendo cosi mi restituisce le coordinate del div?

    Codice PHP:
    <html>
    <
    head>

    <
    style>
    .
    div1{
    position:absolute;
    left:212px;
    top:27px
    }
    </
    style>

    </
    head>
    <
    body>

    <
    div id="div1" class="div1"></div>
    <
    input type="button" name="button1" value="Mostro Coordinate" onclick="salva()" />
    <
    script type="text/javascript">
    <!--
    function
    salva(){

    var
    div1_X = e.pageX - document.getElementById("div1");
    var
    div1_y = e.pageY - document.getElementById("div1");

    alert(Posiozioni+div1_X+div1_Y)

    /*Poi con ajax invio i dati ad una pagina php è li salvo*/

    }
    //-->
    </script>
    </body>
    </html>

  6. #6
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,685

    Predefinito

    Come ti hanno detto queste righe:
    Codice HTML:
    var div1_X = e.pageX - document.getElementById("div1");
    var div1_y = e.pageY - document.getElementById("div1");
    non hanno senso!

    Ciao!

  7. #7
    Guest

    Predefinito

    allora, potrei fare cosi?
    Codice PHP:
    var elemento = document.getElementById("div1");

    var
    divY = elemento.pageY
    var divX = elemento.pageX

  8. #8
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,685

    Predefinito

    Ma... Ma cosa stai dicendo?

    Hai provato così?

    Codice HTML:
    var div1_X = e.pageX - parseInt(document.getElementById("div").style.left.split("px")[0]); // rimuovo da style.left px e trasformo la stringa in intero.
    var div1_Y = e.pageY -  parseInt(document.getElementById("div").style.top.split("px")[0]); // rimuovo da style.top px e trasformo la stringa in intero.
    Hai provato?
    Funziona?

    Ciao!

  9. #9
    Guest

    Predefinito

    Simì, peccato che non funzioni...prova tu stesso...

  10. #10
    L'avatar di mycarlo
    mycarlo non è connesso Utente attivo
    Data registrazione
    06-10-2009
    Residenza
    $this->s50
    Messaggi
    467

    Predefinito

    In realtà l'errore è in e.
    Il debugger di firefox mi dice:
    Codice:
    e is not defined
    Prova a modificare la pagina così:
    Codice HTML:
    <html>
    <head>
    
    <style>
    .div1{
    position:absolute;
    left:212px;
    top:27px;
    background-color: #000000
    }
    </style>
    
    </head>
    <body>
    
    <div id="div1" class="div1">Questo è il div</div>
    <input type="button" name="button1" value="Mostro Coordinate" onclick="salva(event)" />
    <script type="text/javascript">
    <!--
    function salva(e){
    e = (e) ? e : window.event;
    
    var div1_X = e.pageX - parseInt(document.getElementById("div1").style.left.split("px")[0]); // rimuovo da style.left px e trasformo la stringa in intero.
    var div1_Y = e.pageY -  parseInt(document.getElementById("div1").style.top.split("px")[0]); // rimuovo da style.top px e trasformo la stringa in intero.
    
    alert("Posiozioni"+div1_X+"e"+div1_Y);
    
    /*Poi con ajax invio i dati ad una pagina php è li salvo*/
    
    }
    //-->
    </script>
    </body>
    </html>  
    Saluti!
    Ultima modifica di mycarlo : 02-11-2009 alle ore 19.54.52

  11. #11
    Guest

    Predefinito

    Non credo che funzioni... l'alert mi canta la ninna nanna!!!! guarda cosa mi dice:

    PosiozioniNaNeNaN

  12. #12
    L'avatar di mycarlo
    mycarlo non è connesso Utente attivo
    Data registrazione
    06-10-2009
    Residenza
    $this->s50
    Messaggi
    467

    Predefinito

    la ninna nanna!!!!

    Me ne sono accorto dopo. Ho provato e ho capito che lo stile lo devi impostarlo tramite l'apposito attributo:
    Codice HTML:
    <html>
    <head>
    <title>Test</title>
    <script type="text/javascript">
    /* <![CDATA[ */
    function salva() {
    	var elemento = document.getElementById("div1");
    	alert("X: " + elemento.style.left + " | Y: " + elemento.style.top);
    }
    /* ]]> */
    </script>
    </head>
    <body>
    <div id="div1" style="position: absolute; left: 212px; top: 27px; background-color: #000">Questo è il div</div>
    <input type="button" name="button1" value="Mostro Coordinate" onclick="salva()" />
    </body>
    </html>
    Non sò perchè tramite il tag style, javascript non lo riconosce come settato e come valore ritorna NaN!
    Almeno a me fa così!

    Saluti!

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •