当前位置:编程学习 > html/css >>

HTML5 Canva浏览器兼容检查

【问题描述】不是所有的浏览器都支持HTML5。编写Web代码时,若使用了HTML5元素,在不支持HTML5的浏览器中,可能会出现兼容性的问题,如页面显示混乱。为此有必要对不支持HTML5的浏览器做相应的处理。
 
【解析】
 
其实很简单,在<body> onLoad方法中引用下述方法即可:
 
[html] 
function supports_canvas() {  
  
  if(!!document.createElement('canvas').getContext)  
  {  
        
  }  
  else  
  {  
      document.getElementById("html5_warnning").innerHTML = "本演示采用HTML5编写。您的浏览器不支持HTML 5,请更换浏览器,推荐使用Chrome!";  
      document.getElementById("demo").style.display = "none";  
  }  
  
}  
 
function supports_canvas() {
 
  if(!!document.createElement('canvas').getContext)
  {
 
  }
  else
  {
 document.getElementById("html5_warnning").innerHTML = "本演示采用HTML5编写。您的浏览器不支持HTML 5,请更换浏览器,推荐使用Chrome!";
 document.getElementById("demo").style.display = "none";
  }
 
}body中引用示例
 
[html] 
<body class="main_body" onLoad="supports_canvas();">  
 
<body class="main_body" onLoad="supports_canvas();">else子句中的内容可替换为兼容性的代码。
 
 
 
【示例效果】
 
 
\
 
 
【实例】
 
在网上看到一个很有爱的例子,示例的运行效果如下(修改过的版本):
 
\
 
有一点美中不足,那就是这个代码是基于HTML5写的,有些浏览器不支持。利用上述方法进行改进:
 
加入如下代码:
 
[html] 
if(!document.createElement('canvas').getContext) {  
            var msg = document.createElement("div");  
            msg.id = "errorMsg";  
            msg.innerHTML = "你的浏览器落伍了!<br/>亲爱的,请使用 <a href=\"http://www.google.cn/chrome/intl/zh-CN/landing_chrome.html?hl=zh-CN\" target=\"_blank\">Chrome</a>浏览器!";  
            document.body.appendChild(msg);  
        }  
 
if(!document.createElement('canvas').getContext) {
var msg = document.createElement("div");
msg.id = "errorMsg";
msg.innerHTML = "你的浏览器落伍了!<br/>亲爱的,请使用 <a href=\"http://www.google.cn/chrome/intl/zh-CN/landing_chrome.html?hl=zh-CN\" target=\"_blank\">Chrome</a>浏览器!";
document.body.appendChild(msg);
}IE8 运行效果:
 
\
 
补充:web前端 , HTML 5 ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,