support options: hashChange