2017-02-01 17 views
0

Я разработал сайт SPA с использованием Senna.js, и он отлично работает! Тем не менее, я недавно заметил, что при выходе из страницы он не удаляет обработчики событий jQuery. Поэтому у меня есть все функции, которые срабатывают дважды, когда я перехожу к странице, которую я уже посетил.Как остановить Senna.js от вызова нескольких обработчиков событий jQuery

Я установил большую часть моего личного кода, делая это

$("#element").off("event").on("event", etc.)

Но есть тысячи строк кода других людей, которые также питающих мой сайт, и я боюсь, что они стреляют дважды.

Есть ли у кого-либо из них какие-либо идеи или подходы к обращению с этим?

ответ

1

Вы можете отсоединить обработчики событий, используя события жизненного цикла Senna. Например:

var app = new senna.App(); 
 

 
app.on('beforeNavigate', function() { 
 
// detach jQuery event handlers 
 
});