I read some code recently that does something like this:
bob = {'name': 'Bob Smith', 'rank': 7};
$(bob).bind("nameChanged", function () { /* ... */});
// ...
$(bob).trigger("nameChanged");
This appears to work.
But I can't find anything in the jQuery documentation or source about calling the jQuery constructor with an object that is neither a selector nor a DOM node. So my question is, is this a supported use, or is it essentially working by accident?
If you wanted to use an event-driven model for your Model or View objects in JavaScript, how would you do it?
What happens is that it just wraps that object in a jQuery wrapper. It then applies a callback to a new property on that object and then triggers it.
It's an odd way of doing things, but perfectly acceptable.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With