Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JQUERY] Nie działa skrypt bez przeładowania
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
ZenekN
Hej mam problem gdy po wykonaniu skryptu chcę przycisnąć w ten sam przycisk skrypt nie działa
dopiero gdy dam po hide document.location = document.location.href skrypt zadziała ponownie


chciałbym jednak aby skrypt działał ponownie bez przeładowywania okna


Kod
$(document).ready(function(){
    
    $(".seria").bind('click', function(){
    prod = $(this, '.button-seria').attr('data-productid');
    $('.seria-'+prod).show(function(){


    $(".seria").bind('click', function(){
  $('.seria-'+prod).hide();

// tutaj document.location = document.location.href
});
});


});
});
IProSoft
Dwa razy bindujesz "click", stąd problem.

Użyj
[JAVASCRIPT] pobierz, plaintext
  1. $(element).is(":visible");
[JAVASCRIPT] pobierz, plaintext
ZenekN
Rozumiem, ale w takim przypadku też nie działa skrypt ponownie po hide

gdy klikam w ten sam przycisk to nie działa ponownie i nadpisuje kolejno alerty po hide (kliknę 4 razy dostaję 4 alerty)
  1. $(document).ready(function(){
  2.  
  3. $(".seriabutton").click(function(e){
  4.  
  5. e.preventDefault();
  6.  
  7. prod = $(this, '.seriabutton').attr('data-proid');
  8.  
  9. $.post('/products/ajaxseria/307', function(data){
  10.  
  11. $('.seria'+prod).addClass('seria');
  12. scrollToAnchor(prod);
  13. $('.seria'+prod).html(data);
  14.  
  15.  
  16. $(document).mouseup("click", function(){
  17.  
  18. $('.seria').hide();
  19.  
  20.  
  21. });
  22.  
  23.  
  24. });
  25.  
  26.  
  27.  
  28. });
IProSoft
Zdecyduj się czego dokładnie chcesz, pierwszy kod różni się od kolejnego, dodatkowo piszesz o alertach, a w kodzie ich nie masz.
ZenekN
Rozwiązałem problem poprzez funkcję


zamiast hide
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.