8

这可能是非常基本的,或者是不可能的,但它暗示了我,值得一问。有没有办法检查浏览器是否支持 html 5 进度元素?

var progress = document.createElement('progress');
4

3 回答 3

6

另一个 oneliner,取自Modernizr

//returns true if progress is enabled
var supportsProgress = (document.createElement('progress').max !== undefined);
于 2013-04-14T11:35:18.847 回答
3

创建一个progress元素并检查max属性:

function progressIsSupported() {
  var test = document.createElement('progress');
  return (
      typeof test === 'object' &&
      'max' in test
    );
}
于 2013-04-14T00:50:14.403 回答
1

漂亮的一个班轮:

function supportsProgress() {
    return (t = document.createElement("progress")) && t.hasOwnProperty("max");
}

或者,如果您真的不想使用全局:

function supportsProgress() {
    var t = document.createElement("progress");
    return t && t.hasOwnProperty("max");
}
于 2013-04-14T01:25:22.163 回答