Headroom.js 和 ie9 支持

Posted

技术标签:

【中文标题】Headroom.js 和 ie9 支持【英文标题】:Headroom.js and ie9 support 【发布时间】:2015-02-22 21:50:06 【问题描述】:

我正在使用 Headroom.js,我需要 IE9 支持。在一个网站(http://wicky.nillia.ms/headroom.js/)上写着我需要使用 polyfill:

浏览器支持 Headroom.js 依赖于以下浏览器 API:

requestAnimationFrame classList Function.prototype.bind

所有这些 API 都可以填充,因此 headroom.js 可以使用 如果需要,功能较差的浏览器。检查上面的链接资源 确定是否必须 polyfill 才能达到所需的 浏览器支持。

但是有了这些 polyfill,Headroom 仍然无法在 IE9 中运行。我是初学者,我猜 classList 有问题。因为这些类没有在 IE9 中显示:

类: 固定:'净空-固定', unpinned : 'headroom--unpinned', 顶部:'净空-顶部', notTop : 'headroom--not-top', 初始:“净空”

附:对不起我的英语。

【问题讨论】:

您是否在所有其他脚本之前加载了polyfill?你有我们可以直接测试的在线演示吗? 谢谢,乔纳森!这很容易。我没有在所有其他脚本之前加载 polyfill。 【参考方案1】:

尝试使用跨浏览器的类列表

https://github.com/eligrey/classList.js

【讨论】:

我正在使用这个跨浏览器类列表,但标题类没有在 IE9 中显示,并且 Headroom 也不起作用。 还需要一个用于 requestAnimationFrame 的 polyfill,可在此处获得 gist.github.com/paulirish/1579671【参考方案2】:

确保在任何其他脚本之前加载所有的 polyfill。听起来您可能引用这些为时已晚,因此无法从它们中适当受益。

【讨论】:

乔纳森,如果我需要变换:缩放 ie9 的平滑动画,也许你可以帮助我,但不支持过渡。如何解决这个问题? @NatSunSurfer 通常情况下,没有过渡是可以的。它通常不是必不可少的功能。话虽如此,如果您绝对需要转换,您可以通过条件 cmets 加载使用 $.fn.animate 的 jQuery 后备。

以上是关于Headroom.js 和 ie9 支持的主要内容,如果未能解决你的问题,请参考以下文章

Headroom js插件使用方法

您如何将 headroom.js 与 Bootstrap 3 导航栏一起使用?

css 使用Headroom.js隐藏标题,直到WordPress需要它。 http://sridharkatakam.com/hide-header-needed-wordpress-using-h

为啥 IE9 不支持 File API 和文件输入的多属性?

IE9 是不是支持 WebGL 和/或 WebSockets? [关闭]

IE9 是不是支持 CSS3 ::before 和 ::after 伪元素?