1

興味深い問題があります。jQuery (行のリスト) を使用して ajax 経由でデータをロードし、それらを div に配置します。これが最終的にドキュメントに追加されます。このように sth を実行しようとすると

doc.append(myDiv);
console.log(myDiv.height());

高さが間違っています (ドキュメント インスペクタに異なる値が表示されます)。しかし、待ってから (たとえば 750ms)、高さを取得しようとすると、問題ありません。

そして、私の質問があります。私は間違っているのでしょうか、それともブラウザの通常の動作ですか? (私はChromeを使用しています)

乾杯。

アップ、物事を片付けるために、私は次のようにします:

success: function() {
       for(line in data){
            doing sth on line, and then append to myDiv
       }
       myDiv.height()
      }
4

3 に答える 3

0

データがDIVにロードされるのを待ってから、アラートのみを実行する必要があります。あなたの完全なコードが何であるかはわかりませんが、これが問題のようです

于 2012-04-27T09:07:45.307 に答える
0

jqueryなしで直接javascriptで高さを取得してみてください。jquery の高さと幅の関数が正しくない場合があることに気づきました。これらを試してください:

myDiv.get(0).offsetHeight;
于 2012-04-27T09:24:44.887 に答える
0

ajax レスポンスがロードされていないことが原因である可能性があります。で ajax を使ってみてくださいasync:false。これをチェックしてください http://api.jquery.com/jQuery.ajax/

于 2012-04-27T09:07:41.743 に答える