Assertfail

jquery

08 Apr 2009

I’ve come to admire the simplicity and style of jquery. There are some cons to it’s approach of using context (as can be seen as this in the for instance “each”):

jQuery("#table tr").each(function(){
    jQuery(this).DoStuffPlugin();
});

This wreaks havoc with some object oriented programming techniques:

var classSmurf = function(){
    this.name = "smurfette";
    this.SmurfAround = function(){ alert("Smurf: "+this.name); }
};

This is a simplified example that is broken by jquery’s use of context. There is a simple work around for this:

var classSmurf = function(){
    this.name = "smurfette";
    var that = this;
    this.SmurfAround = function(){ alert("Smurf: "+that.name); }
};

But don’t take me wrong. I love jquery. It’s really easy to use. A designer (with some css and html knowledge) can learn how to use it. That shows how easy it is to work with.

Tags


Comments or errors? Fork this post and do a pull request on github