我第一次尝试将 polyfill 用于 HTML5 表单,我只想将代码提供给需要它的浏览器(因此是 modernizr2/yepnope)。
首先要补充的是,javascript 肯定是在 FF3.6 上加载的,所以这不是问题。
基本上这是我的 modernizr/yepnope 代码:
<script>
$(document).ready(function() {
yepnope({
test: Modernizr.input.required && Modernizr.input.placeholder && Modernizr.input.pattern && Modernizr.input.autofocus,
nope: '/_scripts/polyfills/webforms2/webforms2-p.js'
});
});
</script>
在我的 HTML5 表单中,我有各种带有占位符属性的输入字段,在最新的浏览器(FF4 等)中看起来都很可爱,但是当我在 FF3.6 上运行它时,我什么也看不到。然而,我在互联网上看到的所有使用 webforms2 的其他各种演示似乎都有很好的占位符元素。
我还有其他 html5 表单内容,我希望 webforms2 进行 polyfill,但似乎唯一有效的是在顶部字段上工作的“自动对焦”。
我是不是遗漏了一些非常明显的东西?
非常感谢任何帮助/建议。
阿迪。
最佳答案
- 您不需要在 domready 中包含 yepnope。如果这样做,您的“polyfilling”将花费一些额外的时间。 (但是,我认为,webforms2 不能加载为 asnyc 或延迟加载)
- 我不知道你的确切问题。 webforms2 存在一些已知问题,但 zoltan dulac 和 weston ruter 似乎可以解决这些问题。
- 我建议您使用 webshims lib .这是一个较新的项目,实现了表单的当前状态(并且还可以让您包含其他 polyfill。它也使用 modernizr,但目前带有自己的脚本加载器(这将在未来版本中更改),但您可以使用 yepnope如果需要,加载其他脚本/样式/polyfill。
问候 亚历克斯
披露:我是 webshims 库的创建者...
关于forms - html5、modernizr、yepnope、webforms2 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5433126/