我有一个页面,其中包含一些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>
Run Code Online (Sandbox Code Playgroud)
谢谢.
您可以replaceState在运行代码之前检查方法是否可用:
if(window.history.replaceState) {
//Your code
}
Run Code Online (Sandbox Code Playgroud)
如果replaceState是undefined(在不支持它的浏览器中就是这种情况),则语句将求值false并且不执行代码.
| 归档时间: |
|
| 查看次数: |
1627 次 |
| 最近记录: |