我需要确保我的代码在所有浏览器 html 或 html5 中都能正常工作。我在 Firefox 和 Chrome 中的代码运行良好,但在 IE 中我有问题。我想修复它们...
如果客户端支持HTML5,还有这组代码。如果没有,请执行其他操作。
有什么建议么?
我需要确保我的代码在所有浏览器 html 或 html5 中都能正常工作。我在 Firefox 和 Chrome 中的代码运行良好,但在 IE 中我有问题。我想修复它们...
如果客户端支持HTML5,还有这组代码。如果没有,请执行其他操作。
有什么建议么?
有一个名为Modernizr的特征检测库可以提供帮助。
这是他们文档中的一个示例:
Modernizr.load({
test: Modernizr.geolocation,
yep : 'geo.js',
nope: 'geo-polyfill.js'
});
yep
如果地理位置可用,条件是要加载的脚本。如果nope
脚本不可用,则条件是要加载的脚本 - 它将包含您的替代/ polyfill。
您想测试您想要使用的确切内容,而不是是否支持 HTML5。这是因为浏览器可能部分支持 HTML5 - 但也因为许多功能实际上根本不是 HTML5,而是一个单独的规范。(地理位置不是 HTML5 规范的一部分)。
使用 Internet Explorer 实现时,html5 存在问题。您将面临的大部分问题都来自 css3。要处理此问题,您可以手动更改 css,或包含类似 HTML5 Shiv。这是您需要包含的 URL。
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
$("body").append(innerShiv("<section></section>"));
上面说的链接也不错
亲爱的 这是简单的功能。您可以在没有任何库的帮助下检测浏览器是否支持 html5。
<script>
var test_canvas = document.createElement("canvas") //try and create sample canvas element
var canvascheck=(test_canvas.getContext)? true : false //check if object supports getContext() method, a method of the canvas element
if(canvascheck == true)
{
alert("This browser support html5");
}
else{
alert("This browser does not support html5");
}
</script>