Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript][jQuery] odłączanie jednego zdarzenia od drugiego
stellatus
post 2.04.2020, 18:41:11
Post #1





Grupa: Zarejestrowani
Postów: 196
Pomógł: 0
Dołączył: 9.03.2017

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


Kod
(function($) {
    $(document).on('facetwp-loaded', function() {
console.log("Hello!")
     });
})(jQuery);


Na stronie https://www.freuciv.com/ ten skrypt dołącza zdarzenie, w tym wypadku console.log("Hello!") do zdarzenia o nazwie "facetwp-loaded", które uruchamia się po każdym zakończeniu filtrowania. Jak odłączyć to console.log("Hello!") od "facetwp-loaded"? Próbowałem tym: https://www.w3schools.com/jquery/event_off.asp
Kod
(function($){
$("facetwp-loaded").off(console.log("Hello!"))
})(jQuery);

ale to nie działa i nie mam innego pomysłu.

Ten post edytował stellatus 2.04.2020, 18:44:03
Go to the top of the page
+Quote Post
trueblue
post 2.04.2020, 18:45:56
Post #2





Grupa: Zarejestrowani
Postów: 6 761
Pomógł: 1822
Dołączył: 11.03.2014

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


Może najprościej - przez analogię do "on".


--------------------
Go to the top of the page
+Quote Post
stellatus
post 2.04.2020, 20:12:18
Post #3





Grupa: Zarejestrowani
Postów: 196
Pomógł: 0
Dołączył: 9.03.2017

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


Tzn?
Go to the top of the page
+Quote Post
trueblue
post 2.04.2020, 20:39:41
Post #4





Grupa: Zarejestrowani
Postów: 6 761
Pomógł: 1822
Dołączył: 11.03.2014

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


Przecież sam wskazałeś manual:

Kod
$(selector).off(event,selector,function(eventObj),map)


Kod
$(selector).on(event,childSelector,data,function,map)



--------------------
Go to the top of the page
+Quote Post
stellatus
post 2.04.2020, 22:45:52
Post #5





Grupa: Zarejestrowani
Postów: 196
Pomógł: 0
Dołączył: 9.03.2017

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


Kod
(function($) {
$(document).off("facetwp-loaded",function(){
console.log("Hello!")
})
})(jQuery)


To jest analogiczne, ale pewnie nie o to Ci chodziło, bo nie działa.



Dzięki Ci. Już rozumiem:
Kod
function consoleLogHello() {
  console.log("Hello!")



//dodawanie zdarzenia
(function($) {
$(document).on('facetwp-loaded', consoleLogHello)
})(jQuery)



//usuwanie zdarzenia
(function($) {
$(document).off('facetwp-loaded', consoleLogHello)
})(jQuery)


guitar.gif

Wątek zakończony. Chodziło o metodę off i jej prawidłowe zastosowanie.

Ten post edytował stellatus 3.04.2020, 12:34:39
Go to the top of the page
+Quote Post
viking
post 3.04.2020, 05:56:21
Post #6





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

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


Stary artykuł ale może coś więcej ci rozjaśni: https://prophp.pl/article/15/jquery%2C_zdar...e_metoda_%24.on


--------------------
Go to the top of the page
+Quote Post
stellatus
post 3.04.2020, 10:32:37
Post #7





Grupa: Zarejestrowani
Postów: 196
Pomógł: 0
Dołączył: 9.03.2017

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


Dzięki. Główny problem polega na tym, że do jQuery podchodzę jak pies do jeża. Przez niego: https://www.youtube.com/watch?v=JoUrZlcdoFw Ale pewnie jeszcze nieraz się z jQuery spotkam, więc o Twoim linku będę pamiętał.
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: 16.04.2024 - 18:37