标签: modernizr

对base64 URI支持的更好测试(我可以在JS中创建一个大的base64编码图像吗?)

我正在使用Modernizr来检测用户正在运行的浏览器支持的功能,到目前为止一切顺利.但在测试base64兼容性时,我遇到了理论上的问题.这个支持的补丁在这里详细介绍,并且可以工作 - 除了IE8的奇怪情况 - 它只允许最高32KB的base64编码图像.

我真的不想在我的JS文件中嵌入一个32KB长的base64字符串,它会增加一些疯狂的膨胀.那么,我可以使用JS创建一个32KB的有效图像吗?我正在考虑在字符串中重复某种模式,直到它达到32KB的长度,这种事情.或者可能使用现有的小字符串(如Modernizr补丁中的字符串)并在最后添加垃圾数据,这仍然会产生有效的图像.

除了如何操作现有图像之外,我对base64编码几乎一无所知.有没有人有任何想法?

javascript html5 base64 modernizr data-uri

6
推荐指数
1
解决办法
1156
查看次数

HTML5输入验证在IE8中不起作用

你好,互联网的人,我一直在讨厌这个...并且已经看过几个类似的贴子,但我似乎无法弄清楚这一点:

HTML5输入字段验证CSS适用于Firefox,Chrome ......但是唉,不是在IE8中...我的目标受众中的很多人都将使用IE8.

...是的:我正在使用Modernizr,我使用Initializr获取页面模板和CSS ...我有点困惑为什么我无法在IE8中正常工作.

这是我的测试页面的链接: 测试html5页面

输入字段在正确输入之前为红色,然后在输入有效帐号时验证将变为绿色,例如:50011111111

HTML5代码如下:

<label for="account">Account Number: </label> 
<input id="account" name="inputAccount" 
  placeholder="input billing account number" 
  pattern="/(^500)|^\d{11}" 
  required
  autofocus
  type="text"/>
Run Code Online (Sandbox Code Playgroud)

关于什么可能是一个相当简单的修复建议的任何建议将非常感激!

html5 internet-explorer-8 modernizr

6
推荐指数
2
解决办法
3万
查看次数

Modernizr - 哪些脚本异步加载?

我有以下内容:

Modernizr.load([
{
  load : '//ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js',
  complete : function () {
    if ( !window.jQuery ){
      Modernizr.load('/js/jquery-1.6.2.min.js');
    }
  }
},
{
  load : ["/js/someplugin.js", "/js/anotherplugin.js"],
  complete : function()
  {
    // do some stuff
  }
},
{
    load: ('https:' == location.protocol ? '//ssl' : '//www') + '.google-analytics.com/ga.js'
}
]};
Run Code Online (Sandbox Code Playgroud)

我读到Modernizr加载脚本Asyncronously.但在上面的例子中,哪些是异步加载?

是否所有以下内容都是异步加载的?

  1. jquery.min.js
  2. someplugin.js
  3. anotherplugin.js
  4. 的ga.js

或者它是异步和有序加载的组合,如下所示:

  1. 首先加载jquery.min.js
  2. 然后someplugin.js和anotherplugin.js被加载异步
  3. 最后,加载了ga.js.

我很难测试它是哪种情况.

javascript jquery asynchronous modernizr yepnope

6
推荐指数
1
解决办法
3505
查看次数

Modernizr vs $(document).ready()

从网络面板看,当您通过Modernizr.load加载脚本时,它实际上并不会阻止$(document).ready().

所以理论上,假设我通过Modernizr添加json2.js,而另一个开发人员试图在$(document).ready()中使用JSON.parse,他们的脚本实际上可能会因为竞争条件而中断.

是否可以在不试图警告所有代码签到的情况下解决这个问题?

jquery document-ready modernizr

6
推荐指数
1
解决办法
3671
查看次数

Modernizr - 正确加载polyfills的方法/使用自定义检测

我想在网页上使用一些新的HTML5表单属性和输入类型.有些浏览器已经支持它们,有些浏览器不支持它们.这就是为什么我想使用Modernizr - 这就是我的麻烦开始.

据我所知,Modernizr本身并不是一个polyfill,而是一个可以测试浏览器是否能够使用某些新的HTML5/CSS3的脚本.如有必要,可以加载polyfill,"模拟"这些功能,以便它们可以在非支持/旧版浏览器中使用.这是正确的我猜?

关于测试/装载:使用Modernizr加载polyfill的正确或最佳方法是什么?
在文档中我发现了这个:

Modernizr.load({
  test: Modernizr.geolocation,
  yep : 'geo.js',
  nope: 'geo-polyfill.js'
});
Run Code Online (Sandbox Code Playgroud)

但是有些页面也是这样的:

if (Modernizr.touch){
   // bind to touchstart, touchmove, etc and watch `event.streamId`
} else {
   // bind to normal click, mousemove, etc
}
Run Code Online (Sandbox Code Playgroud)

另外,我如何才能真正了解如何检测这些功能?Modernizr.geolocation对于每个特征检测,肯定存在某些东西吗?

在Modernizr GitHub存储库中,还有许多用户贡献的功能检测.如何在我的Modernizr版本中实现这些?或者只是使用他们的建设者是最好的?

在Safari中,HTML5表单验证有效,但没有用于显示错误消息的UI.基本上,该功能只实现了一半.这就是为什么Modernizr在Safari中给出​​了误报,就像在这里已经提到的那样:https ://github.com/Modernizr/Modernizr/issues/266 显然有人用这样的自定义测试来解决这个问题,但我仍然不明白如何使用它.1

html5 modernizr polyfills

6
推荐指数
1
解决办法
3097
查看次数

使用Modernizr加载HTML5 Shiv的性能

我的网站使用Modernizr,需要HTML5Shiv和PrintShiv.不使用Modernizr加载这些shivs,而是通过IE条件加载它们是否有任何性能优势?显然使用Modernizr更干净,但我专注于性能.

javascript performance modernizr

6
推荐指数
1
解决办法
2307
查看次数

有没有办法一次性执行所有Modernizr测试?

我是Modernizr的新手,我只是想找一种简单的方法来检查浏览器的整体兼容性.我已经生成了一个Modernizr脚本来测试我的Web应用程序中最基本的组件,它高度依赖于HTML5,CSS3和现代JavaScript方法.有没有办法同时运行所有这些测试?查看文档,我看到有很多方法可以逐个测试每个功能,但我没有看到一次完成所有功能的方法.我希望做这样的事情:

伪代码

if (Modernizr.testAll()) {
  // Load site
} else {
  // Redirect to compatibility page
}
Run Code Online (Sandbox Code Playgroud)

javascript compatibility cross-browser modernizr

6
推荐指数
1
解决办法
1413
查看次数

Angular2 with modernizr

我正在学习angular2并使用ng2-bootstrap构建我自己的自定义组件.我想使用modernizer来检测浏览器本身支持的表单输入.

我正在使用webpack来构建我的项目.我已经成功配置了它.

我到现在所做的是:


  1. 安装npm install -g modernizr
  2. 下载了仅检查表单输入的modernizr-custom.js.
  3. 下载了modernizr-config.json
  4. 我做了modernizr -c modernizr-config.json来获取要使用的js file.ow

我不知道如何在我自己的自定义组件中使用Modernizr.inputtypes.date?我们如何在组件中访问Modernizr变量?

任何帮助深表感谢.

modernizr angular

6
推荐指数
2
解决办法
7914
查看次数

Math.pow IE11 的替代“**”ES7 polyfill

我正在尝试评估一个包含 power 的表达式,字符串为**。即eval("(22**3)/12*6+3/2")。问题是 Internet Explorer 11 无法识别这一点并引发语法错误。我应该使用哪种聚酯填充材料来克服这个问题?现在我正在使用Modernizr 2.6.2.

示例方程是,

((1*2)*((3*(4*5)*(1+3)**(4*5))/((1+3)**(4*5)-1)-1)/6)/7
((1*2)*((3*(4*5)*(1+3)**(4*5))/((1+3)**(4*5)-1)-1)/6)/7*58+2*5
(4*5+4-5.5*5.21+14*36**2+69/0.258+2)/(12+65)
Run Code Online (Sandbox Code Playgroud)

如果无法做到这一点,有哪些可能的替代方案?

javascript modernizr polyfills internet-explorer-11 ecmascript-2016

6
推荐指数
1
解决办法
1627
查看次数

检测输入类型="日期"是否支持占位符

是否可以检测浏览器是否支持input type="date"placeholder

html javascript jquery html5 modernizr

5
推荐指数
1
解决办法
3529
查看次数