add jquery.visible; refactor