add window hasChange event