2012-03-30 15 views
2

要素の幅を変換しています。 私のjqueryではクラスを追加し、CSSでは変換について説明します。私が今jqueryでクエリーを実行すると、クラスを追加した後のこの要素の幅がこの要素の現在の幅を取得しますが、これはその最終幅ではありません。 最終的な幅はどのように取得できますか?イベント、変換完了、またはこのようなものはありますか? タイムアウトまたはjqueryウォッチを使用する必要がありますか?変換後の要素のプロパティを取得する方法は?

/種類 クリスチャン

EDITについて:それは上の結果を得るためにどのように200を返し、変換した後、100を返す)メソッド幅を(クリック最初にJSFiddle

:さらに良いことになりました を最初のクリック?

+6

コードが千の言葉の価値があります。 –

答えて

2

変換する要素の表示タイプがブロック(表示:ブロック)であることを確認してください。そうしないと、要素の幅を変更できません。

HTML:

<a href="#">Bigger</a> 

のjQuery:

$('a').click(function(e){ 
    console.log($(this).width()); 
    $(this).addClass('bigger'); 
    console.log($(this).width()); 
}); 

CSS:

a { 
    width:100px; 
    background: #ccc; 
} 
.bigger { 
    width: 200px; 
} 
+0

私の質問ではなく、どのように変換するか、どのようにいくつかのプロパティ(その場合は、幅)の要素のクエリには、クラスを追加した後、変換が2番目ほどかかります。編集の私のコードを参照してください。どうも – Christian

関連する問題