开发者社区> 问答> 正文

怎样可以检测浏览器是否支持HTML5中的某一元素?

"我想检测各个浏览器是否支持HTML5中的一些元素,不知道怎样检测,要检测的内容就是

http://www.w3.org/TR/html5-diff/#new-elements 上的部分内容,3.1. New Elements那一栏里的,就是不知道如何下手,例如想测是否支持<section>?请求大家帮帮我~"

展开
收起
kun坤 2020-05-25 20:37:36 725 0
1 条回答
写回答
取消 提交回答
  • "这个只能通过最新的HTML5的标准还有各浏览器的支持情况 网上有一个HTML5标准是否支持某一个元素或功能的网站 找找 我之前看过######

    用Javascript可以检测,思路是这样的:

    在页面创建某个标记(语法正确时总能创建,即使不能被解释),然后检测这个标记的HTML5特有属性特征(不能与HTML4重叠的,否则无法判断了),如果检测到就算有。

    比如说创建一个canvas,再检测这个canvas标签是否具有getContext()方法(或属性),因为这个方法不是你手动添加的,而是当浏览器核心具有这种解释能力的时候内部执行构造函数时就具有的,所以就能检测到了。

    这里只是一个思路,掌握越多的特征,做的越细致越能检测精确。

     

    当然,还有一个更简单的方法,直接检测浏览器的userAgent,针对已知的浏览器解释能力列表也可以快速检测……人品爆发的时候,比如说遇到IE6了,基本就不用检测了

     

    这里附上一段 http://www.one-lab.net/index.htm的检测canvas的示范代码

        function try_canvas() {
            var canvas = document.createElement("canvas");
            var div = document.getElementById("canvas_div");
            if (canvas) {
                if (canvas.getContext) {
                    var context = canvas.getContext("2d");
                    if (context) {
                        context.globalCompositeOperation = "copy";
                        canvas.setAttribute("title", "ONE Browser Demo UI");
                        canvas.setAttribute("id", "canvas_body");
                        canvas.setAttribute("width", 700);
                        canvas.setAttribute("height", 500);
                        canvas.oncontextmenu = new Function("event.returnValue = false;");
                        div.appendChild(canvas);
                        setInterval("canvas_animate()", imgAnimationDelay);
                        document.getElementById("canvas_div_inner").style.display = "none";
                    }
                }
                else {
                    document.getElementById("canvas_div_inner").style.display = "block";
                }
            }
        }
        

    ######参考这里吧: http://www.w3cschool.cn/html5_reference.html
    2020-05-26 11:12:23
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
基于浏览器的实时构建探索之路 立即下载
天猫HTML5互动技术实践 立即下载
基于浏览器的实时构建探索之路--玄寂 立即下载