请看下面的代码:
$(document).ready(function () {
var defaults = {
duration: 4000,
easing: ''
};
$.fn.transition = function (properties, options) {
options = $.extend({}, defaults, options);
properties['webkitTransition'] = 'all ' + options.duration + 'ms ' + options.easing;
console.log(properties);
$(this).css(properties);
};
$('.element').transition({
background: 'red'
});
});我正在浏览一个著名文章在线版,如果你转到上面写着“程序转换”的部分,你会看到我在说什么,现在当用css-3编写动画时,我已经习惯了下面的syntex:
-webkit-transform: .3s;
-moz-transform: .3s;
-ms-transform: .3s;
-o-transform: .3s;但是,在创建css-3转换时,我看到了很多东西,如下所示:
var transEndEventNames = {
WebkitTransition : 'webkitTransitionEnd',
MozTransition : 'transitionend',
OTransition : 'oTransitionEnd otransitionend',
transition : 'transitionend'
}WebkitTransition,MozTransition等是什么?
在我提供的第一个例子中,webkitTransition是什么?虽然看上去很明显,但这些事情意味着什么,完全没有让我成为JS的新手。
会非常感谢genuin ttemp来回答我的问题。
编辑:::我只想得到以下问题的答案。
JS中的跃迁是否等于CSS-3?为什么大写语法。正如有人在下面的评论中指出的那样,我知道jquery自动添加了前缀。
谢谢。
亚历克斯-Z。
发布于 2015-04-01 19:32:12
是JS中的跃迁等于CSS-3。
是的,"JS转换“与CSS转换是一样的。这只是一个在何处以及如何创建和触发这些转换的问题,但结果是相同的。
为什么大写语法
这是一个命名惯例。在CSSStyleDeclaration中,所有CSS礼仪都被命名为camel案例:
partial interface CSSStyleDeclaration { [TreatNullAs=EmptyString] attribute DOMString _camel_cased_attribute;
};http://dev.w3.org/csswg/cssom/
因此,您可以将转换/CSS适当性分配给元素,如下所示:
element.style["-webkit-transition"] = "all 1s"
or
element.style.WebkitTransition = "all 1s"是同一件事
打开浏览器控制台并键入:document.body.style,您会注意到,您用CSS作为-prefix-propriety编写的所有内容都将以PrefixPropriety形式“存储”。
我知道jquery自动添加了前缀。
对他们有好处
https://stackoverflow.com/questions/29397214
复制相似问题