refine click event