allow this to work in Chrome by using bind() instead of context