私は100イメージのスライダーを持っていますので、height
を抽出したいので、インラインonload
イベントを使用します(src
はテンプレートエンジン、サーバー側と何の問題がありませんが):イメージのサイズを抽出するときにロードイベントが期待どおりに機能しない
<img src="<%=i.imgPath%>" style="width: 100%; max-height: 100%" onload="
var maxHeight = $(this).height();
console.log(maxHeight)">
奇妙なことは、画像の約半分が右height
を記録し、私はsetTimeout
関数内のJavaScriptを折り返すならば、私はそれより多くの時間を見ることができるということであるIより多くの画像を使用すると、すべての画像が正しい高さでログに記録されるまで、正確なheight
が記録されます。 これは、load
イベントのタイミングと関係がありますが、画像のロードが完了してすべてがそこにある場合にのみ起動してはいけませんか? So:
1)なぜこのようなことが起こっていますか?
2)ホースを機能させるには?質問の
'
' 'height'がチェックされていませんが、'
'の親要素の' height'がチェックされていますか? –
guest271314
申し訳ありませんが、私は質問を編集しました。私は両方の高さを抽出していましたが、問題は画像そのものと同じです。私は問題が同じであるので簡単にjQueryに変更しました。 –
jQueryはどのように 'javascript'を単純化しますか?イメージが 'html'で読み込まれるときにjQueryが定義されていますか? – guest271314