我只是想知道,因为我一直在努力做非常简单的事情:我目前正在编写一个 jQuery 移动轮播插件,您可以在其中通过滑动从图像切换到图像。对于移动设备,使用 CSS3 转换/转换是有意义的,因为这会提高性能。
为了测试功能是否可用,我可以使用 Modernizr,但我不是很热衷,因为包含另一个脚本用于一个简单的轮播插件似乎有点太多了,特别是在移动世界中,因为带宽非常宝贵。你们只是将 Modernizr 部分复制到插件中,还是将 Modernizr 作为先决条件?
干杯
我会将脚本与它一起打包并指出它取决于它。
我会这样做有两个原因:
在大小方面显然存在相反的论点,即如果他们不在其他地方使用 Modernizr,他们将不得不为该方法下载整个脚本。
我想这是一个判断电话,具体取决于他们需要该功能的可能性。如果他们使用的插件使用了浏览器的超现代功能,我猜他们很可能也会在其他地方使用现代功能,并且需要进行额外的检查。
您可能会考虑解决此问题的一种方法是在第三方边界代码处使用接缝。这意味着您可以将对第三方库的调用打包到您自己的包装函数中。然后,您可以轻松地在 Modernizr 或您自己的所需功能版本之间进行交换,以便您可以发布依赖项和无依赖项版本。
在这种情况下,我个人会说只要求用户将库作为先决条件包括在内,因为它是一个非常常见的库。
如果您只需要测试浏览器是否具有某种功能,则最好只使用YepNope加载器。