[fix] cross-browser compatibility