dynamic event binding method (ver. 2)