The issue you're running into is not fully understanding closures. Basically, each function added by addEvent is referring to `col`, and col's value can change (because closures keep a reference to the variable, not the value). So, by the end of the for loop, col is 7, and each listener will access the value of `col`.
http://seanmonstar.com/post/708874716/closures-break-my-for-s
