added fade effect instead of show and hide element