jQuery 是否使用 .css() 自动处理浏览器前缀?
jQuery 的 .css() 方法简化了操作 CSS 属性的过程。但出现了一个常见问题:它会自动应用浏览器特定的供应商前缀吗?
答案:
在 jQuery 的早期版本中,不会自动处理添加供应商前缀。然而,随着 jQuery 1.8.0 的发布,引入了此功能。因此,jQuery 的 .css() 方法现在可以无缝处理 CSS 属性的供应商前缀。
对开发人员的影响:
这种前缀的自动处理通过消除需要手动添加它们。但是,请务必注意以下几点:
早期 jQuery 版本的代码示例:
以下代码演示了如何使用 jQuery .cssHooks() 在早期版本中添加供应商前缀:
(function($) { function styleSupport(prop) { var prefixes = ['Moz', 'Webkit', 'O', 'ms'], div = document.createElement('div'); if (prop in div.style) { supportedProp = prop; } else { for (var i = 0; i < prefixes.length; i++) { vendorProp = prefixes[i] + capProp; if (vendorProp in div.style) { supportedProp = vendorProp; break; } } } div = null; $.support[prop] = supportedProp return supportedProp } var myCssPropName = styleSupport("myCssPropName"); if (myCssPropName && myCssPropName !== 'myCssPropName') { $.cssHooks["myCssPropName"] = { get: function(elem, computed, extra) { return $.css(elem, myCssPropName); }, set: function(elem, value) { elem.style[myCssPropName] = value; } }; } })(jQuery);
以上是jQuery 的 .css() 是否自动处理浏览器前缀?的详细内容。更多信息请关注PHP中文网其他相关文章!