Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JQuery]Drag-and-dropp
Forum PHP.pl > Forum > XML, AJAX
e-konrad
Witam wszystkich
staram się napisać funkcjonalność w której jeden div jest kontenerem na którym upuszczam div (Component) które znajdują się poza kontenerem. Samo przeciąganie i upuszczanie nie stanowi problemu tylko co w przypadku gdy muszę zdefiniować dużo divów Component? Drugie pytanie, w jaki sposób po upuszczeniu diva Component na div kontener mogę wyświetlić np. alertem tekst który znajduje się w divie upuszczanym?

  1. <script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.js"></script>
  2. <script type="text/javascript" src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
  3. <style type="text/css">
  4. #GridDiv {
  5. width: 200px;
  6. height: 200px;
  7. background-color: #F00;
  8. }
  9.  
  10. #Component1 {
  11. width: 200px;
  12. height: 25px;
  13. background-color: #0FF;
  14. }
  15. #Component2 {
  16. width: 200px;
  17. height: 25px;
  18. background-color: green;
  19. }
  20. </style>
  21.  
  22. <script type='text/javascript'>//<![CDATA[
  23. $(function(){
  24. $( "#Component1" ).draggable();
  25. $( "#Component2" ).draggable();
  26.  
  27. $( "#GridDiv" ).droppable({
  28. accept: "#Component1, #Component2",
  29. drop: function( event, ui ) {
  30. var droppable = $(this);
  31. var draggable = ui.draggable;
  32. // Move draggable into droppable
  33. draggable.appendTo(droppable);
  34. draggable.css({top: '0px', left: '0px'});
  35. }
  36. });
  37. });//]]>
  38. </script>
  39. </head>
  40.  
  41.  
  42. <div id="GridDiv"></div>
  43. <div id="Component1">obiekt1</div>
  44. <div id="Component2">obiekt2</div>
  45.  
  46. </body>
  47. </html>
  48.  


koodo218
Cytat(e-konrad @ 12.02.2016, 19:38:05 ) *
co w przypadku gdy muszę zdefiniować dużo divów Component?

Zastosuj klasy i przypisz każdemu zdarzenie w pętli.
Cytat(e-konrad @ 12.02.2016, 19:38:05 ) *
Drugie pytanie, w jaki sposób po upuszczeniu diva Component na div kontener mogę wyświetlić np. alertem tekst który znajduje się w divie upuszczanym?

W chwili wzięcia diva pobierasz jego napis do zmiennej (this.innerHTML, this.value zależy jak masz to rozwiązane)... w chwili upuszczenia uruchamiasz alert ze zmienną pobraną wcześniej.
e-konrad
Mógłbyś pokazać mi jak zrobić tą pętlę w skrypcie javy? Próbuję na różne sposoby i za każdym razem nie ma możliwości aby ruszyć div
koodo218
  1. <div id="GridDiv"></div>
  2. <div class="components green">obiekt1</div>
  3. <div class="components blue">obiekt2</div>

[JAVASCRIPT] pobierz, plaintext
  1. //<![CDATA[
  2. $(function(){
  3.  
  4. $('.components').draggable();
  5.  
  6. $( "#GridDiv" ).droppable({
  7. accept: ".components",
  8. drop: function( event, ui ) {
  9. var droppable = $(this);
  10. var draggable = ui.draggable;
  11. // Move draggable into droppable
  12. draggable.appendTo(droppable);
  13. draggable.css({top: '0px', left: '0px'});
  14. }
  15. });
  16. });//]]>
[JAVASCRIPT] pobierz, plaintext


  1. #GridDiv {
  2. width: 200px;
  3. height: 200px;
  4. background-color: #F00;
  5. }
  6. .components {
  7. width: 200px;
  8. height: 25px;
  9. }
  10. .green {
  11. background-color: green;
  12. }
  13. .blue {
  14. background-color: blue;
  15. }
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.