我已經寫了使用了大量的用戶選項動畫計時,性能等,並似乎無法弄清楚如何添加CSS3動畫的腳本(這將回退到jQuery的)jQuery和CSS3過渡
說我有下面的代碼(只是一個例子):
$Element.bind('click',function(){
var bc=options.borderColor,
bw=options.borderWidth,
l= options.left,
speed=options.speed,
bc_ease=options.borderColorEasing,
bw_ease=options.borderColorWidth,
l_ease=options.leftEasing;
if(Modernizr.csstransitions){
// CSS3 .....
}else{
// JS
$Overlay.animate({borderColor: bc, borderWidth: bw, left: L },
{duration:speed, queue:false, specialEasing: {borderColor: bc_ease,
borderWidth: bw_ease, left: L_ease }});
};
});
我也建立了一個CSS規則更新功能,我想我會需要:
setCSSRule:function(getRule,newRule){
var styles=document.styleSheets;
for(var i=0,l=styles.length; i<l; ++i){
var sheet=styles[i];
if(sheet.title === "style"){
var rules=sheet.cssRules;
for(var j=0, l2=rules.length; j<l2; j++){
var rule=rules[j];
// SELECT APPROPRIATE RULE IN STYLESHEET AND UPDATE IT
if(getRule === rule.selectorText){
rule.style.cssText=newRule;
};
};
};
};
},
這只是遍歷所有樣式表,找到正確的規則然後用提供的新規則更新它。
我對CSS3轉換有一個基本的瞭解,但我習慣於在jQuery和JS中進行動畫製作,所以CSS3轉換有點落後於我。從我讀過的,我可以使用addClass或Toggle類來實現這一點,但需要將用戶選項(如代碼的第一部分中的變量所示)插入到CSS3轉換中(這就是爲什麼我打算構建CSS規則更新功能),但現在我暫時停滯不前。任何幫助將是驚人的!謝謝你們:)