如果支持HTML5输入,如何检查?

时间:2011-11-26 13:23:10

标签: javascript html5

如果访问者浏览器支持HTML5输入类型,我想查看我的网站。我该怎么办?

4 个答案:

答案 0 :(得分:24)

使用表单字段,您可以使用:

var i = document.createElement("input");
i.setAttribute("type", "color");
return i.type !== "text";

如果支持颜色,则i.type将为彩色,但如果不支持,则导航器会将文本作为默认值返回。 因此,像这样的简单验证可以帮助您。

答案 1 :(得分:13)

Modernizr支持检查新的输入类型。

答案 2 :(得分:1)

你可以这样做:

function IsAttributeSupported(tagName, attrName) {
    var val = false;
    // Create element
    var input = document.createElement(tagName);
    // Check if attribute (attrName)
    // attribute exists
    if (attrName in input) {
        val = true;
    }
    // Delete "input" variable to
    // clear up its resources
    delete input;
    // Return detected value
    return val;
}

if (!IsAttributeSupported("input", "placeholder")) {
    // Do something special here
    alert("placeholder attribute is not supported");
}

希望有所帮助

答案 3 :(得分:0)

我会对接受的答案发表评论,但不会允许我没有一定的声誉,所以我会这样做。如果浏览器遇到它无法识别的输入类型,它将自动默认为“文本”输入本身。所以我会说答案中的JS是不必要的(除非你想默认为'text'以外的东西)