Closed Kesantielu closed 7 years ago
Is it possible that the if (some_trigger)
statement never becomes true
?
Asking because we have test cases for unbindArrive
function and all those test cases are passing so either the bug occur in some very specific case or some issue with your code.
I added console.log()
before unbinding to make sure with some_trigger
works. A record appears in the log, but arrive event fires again...
While debugging I found that length of _eventsBucket
is 0 when unbindArrive
calling.
Hmm...thanks. Will look into it over the coming weekend. I think it might be related to synchronous callback. Can you try unbind within a timer, like this setTimeout(function (){document.unbindArrive('.some_class')}, 1)
@Kesantielu It's very likely, that you might want to move your flag variable some_trigger
in the parent scope—just to the parent scope of your current logic.
Example:
document.arrive('.some_class', {existing: true}, function () { if (some_trigger) document.unbindArrive('.some_class') }
After unbinding event still fires.