用法
jQuery.cssHooks => Object
jQuery.cssHooks => Object
说明:直接钩子到 jQuery 以覆盖特定 CSS 属性的检索或设置方式、规范 CSS 属性命名或创建自定义属性。
添加的版本:1.4.3
jQuery.cssHooks
$.cssHooks
对象提供了一种方法来定义用于获取和设置特定 CSS 值的函数。它也可以用来创建新的 cssHooks 来规范化 CSS3 特性,比如盒子阴影和渐变。
例如,某些基于 Webkit 的浏览器版本需要 -webkit-border-radius
才能在元素上设置 border-radius
,而早期的 Firefox 版本需要 -moz-border-radius
。 css 钩子可以规范化这些供应商前缀属性,让 .css()
接受单个标准属性名称(border-radius
,或使用 DOM 属性语法,borderRadius
)。
除了提供对如何处理特定样式属性的细粒度控制之外,$.cssHooks
还扩展了 .animate()
方法可用的属性集。
定义一个新的 CSS 钩子是straight-forward。下面的骨架模板可以作为创建自己的模板的指南。
|
函数测试
在规范化供应商特定的 CSS 属性之前,首先确定浏览器是否支持标准属性或供应商前缀的变体。例如,要检查是否支持 border-radius
属性,请查看是否有任何变体是临时元素的 style
对象的成员。
|
定义一个完整的 CSS 钩子
要定义一个完整的 css 钩子,请将支持测试与第一个示例中提供的骨架模板的填充版本结合起来:
|
然后,您可以使用 DOM(camelCased)样式或 CSS(连字符)样式在受支持的浏览器中设置边框半径:
|
如果浏览器不支持任何形式的 CSS 属性,无论是否带有供应商前缀,样式都不会应用于元素。但是,如果浏览器支持专有替代方案,则可以将其应用于 cssHooks。
|
特殊单位
默认情况下,jQuery 将 "px" 单元添加到传递给 .css()
方法的值。可以通过将属性添加到
对象来防止这种行为jQuery.cssNumber
|
使用 cssHooks 制作动画
css hook 还可以通过向jQuery.fx.step
对象添加属性来钩子到 jQuery 的动画机制:
|
请注意,这最适用于简单的numeric-value 动画。根据 CSS 属性、它返回的值的类型以及动画的复杂性,可能需要更多的自定义代码。
相关用法
- JQuery jQuery.cssNumber用法及代码示例
- JQuery jQuery.contains()用法及代码示例
- JQuery jQuery.inArray()用法及代码示例
- JQuery jQuery.when()用法及代码示例
- JQuery Mobile jQuery.mobile.path.get()用法及代码示例
- JQuery jQuery.grep()用法及代码示例
- JQuery Mobile jQuery.mobile.navigate()用法及代码示例
- JQuery Mobile jQuery.mobile.path.isRelativeUrl()用法及代码示例
- JQuery jQuery.dequeue()用法及代码示例
- JQuery jQuery.escapeSelector()用法及代码示例
- JQuery Mobile jQuery.mobile.silentScroll()用法及代码示例
- JQuery jQuery.map()用法及代码示例
- JQuery jQuery.readyException()用法及代码示例
- JQuery jQuery.parseJSON()用法及代码示例
- JQuery Mobile jQuery.mobile.path.makePathAbsolute()用法及代码示例
- JQuery jQuery.each()用法及代码示例
- JQuery jQuery.unique()用法及代码示例
- JQuery jQuery.getJSON()用法及代码示例
- JQuery jQuery.proxy()用法及代码示例
- JQuery jQuery.ajaxSetup()用法及代码示例
- JQuery jQuery.type()用法及代码示例
- JQuery UI jQuery.effects.define()用法及代码示例
- JQuery jQuery.parseXML()用法及代码示例
- JQuery jQuery.support用法及代码示例
- JQuery Mobile jQuery.mobile.path.isAbsoluteUrl()用法及代码示例
注:本文由纯净天空筛选整理自jquery.com大神的英文原创作品 jQuery.cssHooks。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。