2012-02-21 4 views
2

一度に複数の背景定義を更新する方法について考えてもらえますか?jQueryを使用して複数の背景CSS定義を更新する

私はこれまでいくつかのコードを手に入れましたが、1つの要素に対してさまざまな勾配背景を更新したいと考えています。

$('ul#tabs li').on('mousemove',function(e){ 
var x= Math.round(((e.pageX - this.offsetLeft)*100)/$(this).width()); 
x= x-10; 
$(this).find(".highLight").css({ 
    'background': '-webkit-linear-gradient(left, 
     rgba(255,255,255,0) 0%, 
     rgba(255,255,255,0.5)'+x+'%, 
     rgba(255,255,255,0) 100%)' 
});}); 

いずれの考えも高く評価されます。

答えて

2

あなたはhttp://lea.verou.me/prefixfree/

あなたはどこにでものみ接頭辞CSSプロパティを使用することができますスクリプトを使用することができます。 これは、バックグラウンドで動作し、現在のブラウザの接頭辞をCSSコードの に追加します。

..

を取得し、接頭辞のプロパティを設定するためのjQueryのの.css()メソッドは(プラグインが必要)します

代わりに、各ブラウザの勾配構文について.css()を呼び出すことができます。

var $highLight = $(this).find(".highLight"); 
$highLight.css('background', '-webkit-linear-gradient(..)'); 
$highLight.css('background', '-moz-linear-gradient(..)'); 
//include others such as opera, old webkit, microsoft 
$highLight.css('background', 'linear-gradient(..)'); 

各ブラウザがサポートするグラデーション構文のみが適用されます。

+0

代替案が機能しました。 (プレフィックスツリーが何かをするのを奇妙にすることはできませんでした。)すべての私のテストブラウザで機能しています。素晴らしい、ありがとう!奇妙なことですが、私はちょうど背景の新しい定義が以前のバージョンを上書きすると仮定しました。実際、そうではないことは夢中です。 –

+1

これは現在実施中のコードです。再度、感謝します。 http://ketchbook.com/test/#home –

関連する問題