Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: popover po zmianie zdjecia nie pokazuje dymku
Forum PHP.pl > Forum > Po stronie przeglądarki
rad11
Mam taki przykladowy kod:

  1. <a data-id="<?php echo $account['id']; ?>" class="logout"><img data-html="true" data-action="show_status" class="acclist_action_icon" src="/static_local/glyphicons/png/glyphicons_386_log_in.png" data-container="body" data-toggle="popover" data-placement="top" data-trigger="hover" data-content="Zalogowany, kliknij aby wylogować. <br />Ostatnia aktywnosc: <span class='tooltip-timeactive'><?php echo date('Y-m-d H:i:s', $account['login_data']['time_activ']); ?></span>.<br />Czas wygaśnięcia o: <span class='tooltip-timeactive'><?php echo date('Y-m-d H:i:s', strtotime('+8 hours', $account['login_data']['time_activ'])); ?></span> "/></a>


Po kliknieciu:

  1. $('.logout').on('click', function (e) {
  2. e.preventDefault();
  3. var $this = $(this);
  4. var data_id = $this.attr('data-id');
  5. logoutUser(data_id, $this);
  6. });
  7.  
  8. function logoutUser(data_id, $this) {
  9. var r = confirm("Czy napewno chcesz wylogować użytkownika?");
  10. if (r == true) {
  11. $this.replaceWith('<img data-action="show_status" class="acclist_action_icon logouted" src="/static_local/glyphicons/png/glyphicons_387_log_out.png" data-container="body" data-toggle="popover" data-placement="top" data-trigger="hover" data-content="Wylogowany" data-original-title title/>');
  12.  
  13. $('.popover').remove();
  14.  
  15. $.ajax({
  16. method: "POST",
  17. url: "/apps/administration/accounts/logout",
  18. data: {
  19. account_id: data_id
  20. },
  21. dataType: "JSON",
  22. success: function (res) {
  23. $('img[data-action=show_status]').popover();
  24. }
  25. });
  26. } else {
  27. return false;
  28. }
  29. }


Ikonka sie zmienia. Dymek znika, ale nie pojawia sie nowy dymek. Jakies pomysly jak to rozwiazac?
by_ikar
http://getbootstrap.com/javascript/#popovershow

Kod
$('img[data-action=show_status]').popover('show');


Domyślnie popover ma podpięte zdarzenie click: http://getbootstrap.com/javascript/#popovers-options więc musisz go wywołać ręcznie.
rad11
Tak ale tu nie chodzi o klikniecie w dymek tylko po kliknieciu w img podmieniam obrazek ktory ma nowe popup body. I wtedy jak juz jest nowy obrazek to nie pokazuje sie dymek dla nowego obrazka. Dodanie show nic nie zmienilo.
trueblue
http://stackoverflow.com/a/17864795
rad11
Dodam ze po najechaniu na ten obrazek to wogole nie tworzy elementow popover w dokumencie html.
sunpietro
Zapewne przypiąłeś event kliknięcia w element do pierwszego obrazka. Po załadowaniu nowego obrazka poprzedni element DOM został usunięty a do nowego nie został podpięty event kliknięcia i dlatego nie pojawia ci sie dymek. Musisz inaczej podpiąć eventy, np. do kontenera rodzica i tam sprawdzać czy element jest obrazkiem i wtedy odpalać akcje związane z pokazywaniem dymka.
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-2025 Invision Power Services, Inc.