Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [jquery] Ruszanie objektu po append()
Ideal
post 7.03.2011, 23:57:15
Post #1





Grupa: Zarejestrowani
Postów: 59
Pomógł: 1
Dołączył: 8.11.2010

Ostrzeżenie: (0%)
-----


Nie zupelnie wiem gdzie umiescic to pytani bo to reczje nie jest pytanie poczatkujacego. Mianowicie:

Mam kilka divow na stronie ktore moge poruszac draggable() - jquery ui

Ale mam tez guzik ktory dodaje mi nowe takie same obiekty i one sa juz nie aktywne.

Kod napisalem 'uniwersalny' czyli tak ze po kliknieciu na objekt z danej klasy czyta jego id i dopiero mozna go ruszac.

no ale tak jak napisalem wczesniej jesli wstawie nowe (klasa zostaje ta sama id sie zminia (dodaje jeden do poprzednieg) no ale sa nie aktywne) - jak to zrobic ?

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
d3ut3r
post 8.03.2011, 00:05:52
Post #2





Grupa: Zarejestrowani
Postów: 709
Pomógł: 176
Dołączył: 24.10.2010

Ostrzeżenie: (0%)
-----


To powinno rozwiać wątpliwości.

http://www.gersh.no/posts/view/jquery_live...ated_on_the_fly



--------------------
http://d3ut3r.wordpress.com/ | mysql_* jest przestarzałe UŻYWAJ PDO!
Go to the top of the page
+Quote Post
Ideal
post 8.03.2011, 14:30:16
Post #3





Grupa: Zarejestrowani
Postów: 59
Pomógł: 1
Dołączył: 8.11.2010

Ostrzeżenie: (0%)
-----


Nie rozumiem zupelnie - czy w chwili wolnego czasu mozesz mi to wytlumaczyc na moim przykladzie ?


STYL KLASY MAIN_OBJECT:

.main_object {

width:300px;
min-width:300px;
height:200px;
min-height:200px;
border:2px solid #FFEBC1;
background-color:#FFF9EA;
position:relative;

}



<!--- DODAWANIE NOWYCH OBIEKTOW ---!>


var increaseID = 0;

$("#new_one").click(function() {

increaseID = increaseID + 1;

$('body').append('<div id="main_object_' + increaseID + '" class="main_object" ></div>');

$("#" + increaseID).resizable();

$("#" + increaseID).draggable();


});
Go to the top of the page
+Quote Post
Kartofelek
post 8.03.2011, 15:26:54
Post #4





Grupa: Zarejestrowani
Postów: 55
Pomógł: 4
Dołączył: 27.09.2007

Ostrzeżenie: (0%)
-----


a to nie jest błąd logiczny? W sensie nie znam dokładnie twojego kodu, ale imo:

"#" + increaseID

to nie jest to samo co

"main_object_' + increaseID + '"

ale nie wiem czy ma być.
Go to the top of the page
+Quote Post
Ideal
post 8.03.2011, 15:37:57
Post #5





Grupa: Zarejestrowani
Postów: 59
Pomógł: 1
Dołączył: 8.11.2010

Ostrzeżenie: (0%)
-----


hej hej to akurat dziala prawidlowo (moze zle skopiowalem cos ewetnualnie) bardzie chcialbym zeby mi ktos wyjasnil ten tutorial z linka
Go to the top of the page
+Quote Post
Kartofelek
post 9.03.2011, 10:34:49
Post #6





Grupa: Zarejestrowani
Postów: 55
Pomógł: 4
Dołączył: 27.09.2007

Ostrzeżenie: (0%)
-----


Normalnie jak podpinasz zdarzenie np

$('div').bind({
'click' : function() {.....}
});

to robisz to do istniejących elementów.
Natomiast za pomocą LIVE i delegate robisz to przyszłościowo, czyli także do elementów które dopiero powstaną a pasują do pobrania.

http://jqapi.com/#p=delegate
http://jqapi.com/#p=live

Ale w podanym przez ciebie skrypcie nie ma to znaczenia, bo ty podpinasz za każdym razem.

Czytając twój skrypt ja to rozumiem tak: klikam na newOne, on tworzy element i wrzuca go do div. Potem podpinasz Resize i Dragable jakiemuś innemu elementowi, który gdzieś tam jest na stronie. Nie wiem czy to tak ma działać smile.gif

Może podaj kod w całości?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 25.06.2025 - 22:43