fixed event bubbling issue