我有一个页面包含一些 JS 来更新浏览器历史记录(pushState()
,使用 HTML5)。由于 IE8 不支持 HTML5,用户会被告知该页面包含错误。虽然这并没有削弱页面的功能,但它看起来不太专业,所以我想知道在运行此代码之前是否检查用户浏览器是否支持 HTML5?
<script type="text/javascript">
/** Update history.state() (for back/forward links) */
var object = {
ajax_string: '<?php echo make_ajax_string(); ?>',
security: '<?php echo wp_create_nonce('updated-page-nonce'); ?>',
};
window.history.replaceState(object, '<?php echo $post->post_title; ?>', '<?php echo get_permalink($post->ID); ?>');
</script>
Thanks.
您可以检查是否replaceState
方法在运行代码之前可用:
if(window.history.replaceState) {
//Your code
}
If replaceState
is undefined
(在不支持它的浏览器中会出现这种情况)然后该语句的计算结果为false
并且代码没有被执行。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)