Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [jquery] odwołanie do wygenerowanego div przez jquery, $(".div").click() - nie działa dla div wygen. przez jquer
pmx
post
Post #1





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 11.08.2010

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


Witam wszystkich

W zasadzie nie wiem jak szukać informacji na temat opisany poniżej, może jest jakiś mądre pojęcie na ten temat winksmiley.jpg

korzystam z plug-ina AjaxFlagMenu http://code.google.com/p/ajaxflagmenu/ w jquery.

Plug-in ten działa na zasadzie generacji zawartości diva, którego ID podamy mu w parametrze.
Plug-in generuje proste menu, używam kilka menu generowanych przez ten dodatek i chcialbym aby kliknięcie jakiejś pozycji w jednym z menu odznaczało wcześniej kliknięta pozycję w pozostałym.

W tym celu napisałem coś takiego, na razie w celach testowych.
dla wyjaśnienia, element z class=onOutClass dostaje class=onOverClass podczas najechania kursorem - realizowane przez wspomniany dodatek

Chciałbym aby akcja wykonywała się dla każdego elementu z class=onOverClass, jeśli dokument nie jest generowany dynamicznie takie rozwiązanie oczywiście działa.

  1. $(".onOverClass").click(function(){
  2. alert('test');
  3. });


Fragment wygenerowanego kodu przez plug-in
  1. <ul style="list-style: none outside none;">
  2. <li class="CaptionClass">Informacje</li>
  3. <li class="onOutClass" style="cursor: pointer; padding: 1px; -moz-border-radius: 4px 4px 4px 4px;" title="Ostatnie">
  4. <table border="0" width="100%">
  5. <tbody>
  6. <tr>
  7. <td width="10%"><img src="img/application_add.png"></td>
  8. <td width="60%">Ostatnie</td>
  9. <td width="30%">
  10. <div style="-moz-border-radius: 4px 4px 4px 4px;"></div>
  11. </td>
  12. </tr>
  13. </tbody>
  14. </table>
  15. </li>
  16. </ul>


Niestety nie działa, jquery nie umie się odwołać do elementu wygenerowanego przez samego siebie.

Co jest nie tak, znacie może jakieś ładne rozwiązanie oprócz wstawiania do każdego linka onClick = _jakaś_funkcja() ?



Jeśli podobny problem przwija się na forum z góry przepraszam i proszę o linka. Niestety w swoich zapytaniach nie znalazłem.

Ten post edytował pmx 11.08.2010, 13:32:44
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
matrik
post
Post #2





Grupa: Zarejestrowani
Postów: 115
Pomógł: 2
Dołączył: 23.07.2009

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


Tak, miałem ten sam problem, chodzi tu o to, że jak zobaczysz źródło strony to nie pokaże Ci tego co wygenerowało JS, bo tego nie ma w DOM.
Jedynym rozwiązaniem jest zastosowanie plu-gin'u livequery, on po prostu się odwołuje do tego co wcześniej wygenerowało.

Zapytaniem:
$("#element").livequery('click', function(){
CODE
});

Będzie wszystko ładnie działać, to działa wtedy gdy nie jest generowane przez JS tak jak ująłeś smile.gif

Google: livequery jquery

Powodzenia
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 Aktualny czas: 22.08.2025 - 03:16