Modernizr没有检测到Chrome和&amp ;;火狐

时间:2016-02-17 11:00:10

标签: javascript html google-chrome firefox modernizr

我已经下载了Modernizr,并且在构建中只包含一个元素, a [download] Attribute

然后我将 modernizr-custom.js 文件包含到我的库中并成功添加到我的项目中(没有错误):

<script src="lib/modernizr-custom.js"></script>

我现在正试图检测浏览器是否支持下载功能,如下所述:

http://caniuse.com/#feat=download

注意,IE和Safari不支持它,但Chrome和Firefox支持它。

我使用以下Javascript代码:

if (Modernizr.adownload) {
  console.log("SUPPORT");
} else {
  console.log("NO SUPPORT");
}

在IE,Firefox和Chrome上,它显示没有支持。据我所知,它应该显示支持Firefox和Chrome。

以下是我的想法:

  • 我没有在构建中包含我需要的东西吗?
  • 我是否误解了如何使用modernizr测试功能?
  • 这是Modernizr实施中的错误吗?

1 个答案:

答案 0 :(得分:1)

适合我:

/*! modernizr 3.3.1 (Custom Build) | MIT *
 * http://modernizr.com/download/?-adownload-setclasses !*/
!function(e,n,s){function a(e,n){return typeof e===n}function o(){var e,n,s,o,t,i,f;for(var c in r)if(r.hasOwnProperty(c)){if(e=[],n=r[c],n.name&&(e.push(n.name.toLowerCase()),n.options&&n.options.aliases&&n.options.aliases.length))for(s=0;s<n.options.aliases.length;s++)e.push(n.options.aliases[s].toLowerCase());for(o=a(n.fn,"function")?n.fn():n.fn,t=0;t<e.length;t++)i=e[t],f=i.split("."),1===f.length?Modernizr[f[0]]=o:(!Modernizr[f[0]]||Modernizr[f[0]]instanceof Boolean||(Modernizr[f[0]]=new Boolean(Modernizr[f[0]])),Modernizr[f[0]][f[1]]=o),l.push((o?"":"no-")+f.join("-"))}}function t(e){var n=c.className,s=Modernizr._config.classPrefix||"";if(u&&(n=n.baseVal),Modernizr._config.enableJSClass){var a=new RegExp("(^|\\s)"+s+"no-js(\\s|$)");n=n.replace(a,"$1"+s+"js$2")}Modernizr._config.enableClasses&&(n+=" "+s+e.join(" "+s),u?c.className.baseVal=n:c.className=n)}function i(){return"function"!=typeof n.createElement?n.createElement(arguments[0]):u?n.createElementNS.call(n,"http://www.w3.org/2000/svg",arguments[0]):n.createElement.apply(n,arguments)}var l=[],r=[],f={_version:"3.3.1",_config:{classPrefix:"",enableClasses:!0,enableJSClass:!0,usePrefixes:!0},_q:[],on:function(e,n){var s=this;setTimeout(function(){n(s[e])},0)},addTest:function(e,n,s){r.push({name:e,fn:n,options:s})},addAsyncTest:function(e){r.push({name:null,fn:e})}},Modernizr=function(){};Modernizr.prototype=f,Modernizr=new Modernizr;var c=n.documentElement,u="svg"===c.nodeName.toLowerCase();Modernizr.addTest("adownload",!e.externalHost&&"download"in i("a")),o(),t(l),delete f.addTest,delete f.addAsyncTest;for(var d=0;d<Modernizr._q.length;d++)Modernizr._q[d]();e.Modernizr=Modernizr}(window,document);

/* Test code */
if (Modernizr.adownload) {
  document.body.innerHTML = "SUPPORT";
} else {
  document.body.innerHTML = "NO SUPPORT";
}

您确定自定义版本包含[下载]吗?你可能忘了它。 Build from here,亲眼看看。