wrap some initialization steps into a setTimeout function to make sure user defined options work properly
add tests for placeholder option