Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    181

    JQUERY, oggetto clonato

    Ho aperto un’altra discussione, in quanto ho notato che il problema non sta nel contextMenu. Vi spiego Bene.
    Ho realizzato un Drag And Drop con JQUERY. Ho un oggetto padre, che col drang lo clono, procurandomi così un oggetto figlio. Adesso in questo oggetto figlio (oggetto clonato), voglio applicare determinate operazioni, cambiare id, cambiare classe, aggiungere tag come href etc etc, ma ho notato che quando eseguo queste operazioni, vengono effettuate sull’oggetto padre e non su quello clonato. Qualcuno ha mai riscontrato questi problemi?

    Grazie di tutto.

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    posta il codice che hai utilizzato, altrimenti viene difficile aiutarti...

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    181
    Certo subito^^

    Codice PHP:
    $(document).ready(function(){

       
    //Tutto ciò che ha la classe 'oggetti' è draggabile.
        
    $(".oggetti").draggable({
            
    helper'clone'
        
    });

         
    //Questo è il div carrello che conterrà oggetti.
         
    $(".carrello").droppable({
            
    accept".oggetti",
            
    hoverClass'carrello_hover',
            
    tolerance'pointer',

            
    drop: function(eventui) {

                
    //Qui clono l'oggetto che ho trascinato.
                
    $(this).append($(ui.draggable).clone());
            }
        });

    }); 
    Adesso supponiamo che volessi cambiare id all'oggetto trascinato...come dovrei fare? Ho provato a fare:

    Codice PHP:
    //Recupero l'id oggetto del clone
    var idOggetto ui.draggable.attr("id");
    $(
    "#"+idOggetto ).attr("id","nuovo valore id"); 
    Però lo cambia soltanto all'oggetto padre e non al clone...io invece vorrei farlo soltanto al clone

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    codice:
    drop: function(event, ui) { 
    
                //Qui clono l'oggetto che ho trascinato. 
               $objClone = $(ui.draggable).clone().attr("id","nuovo id")
                $(this).append($objClone ); 
            }

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    181
    good...funge alla grande. Per poi prendere l'oggetto in riferimento?

    Codice PHP:
    $("#nuovoid").html(); 
    Così dovrebbe darmi tutto l'oggetto che ho clonato? Tipo un div o un'immagine etc etc?

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    codice:
    $("#nuovoid")
    Cosi fai rifermento al nuovo elemento appena clonato, questo avrà tutti i suoi attributi e metodi come qualunque altro oggetto... con $("#nuovoid").html() invece fai rifermento a tutto ciò che è contenuto all'interno dell'elemento, ti faccio un esempio:

    <div id="nuovoid">ciao</div>
    - $("#nuovoid").html() ti torna "ciao"

    <div id="nuovoid"><div id="divcontenuto">ciao</div></div>
    -$("#nuovoid").html() ti torna "<div id="divcontenuto">ciao</div>"

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    181
    aspetta, forse hai sbagliato a scrivere, ciao ti torna senza il metodo html(); giusto?...

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    no! senza il metodo ti torna l'elemento html con id uguale a "nuovoid"

    metodo html()
    selector id

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    181
    Aspetta scusa se ti rompo ancora ^^ però voglio capire per bene .

    Codice PHP:
    <div id="nuovoid">ciao</div
    - $(
    "#nuovoid").html() ti torna "ciao"

    <div id="nuovoid"><div id="divcontenuto">ciao</div></div
    -$(
    "#nuovoid").html() ti torna "<div id="divcontenuto">ciao</div>" 
    Mi sembra uguale...ciao quando torna?

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    probabilmente sono io che non riesco a spiegarmi bene, ma piu che metterti la documentazione ufficiale non so che fare, fatti delle prove metti degli alert nel codice cosi vedi la differenza.

    codice:
    <div id="nuovoid">ciao</div>  
    <div id="nuovoid2"><div id="divcontenuto">ciao</div></div>  
    <script>
    alert($("#nuovoid").html());
    alert($("#nuovoid2").html());
    alert($("#nuovoid"));
    //ecc...
    </script>

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.