CSSの背景画像の高さを&の高さにしてdocument.ready javascriptに挿入する必要があります。ような何か:JavaScript/jQuery:DOMコマンドを実行する* after * img.onloadコマンド
$(document).ready(function(){
img = new Image();
img.src = "images/tester.jpg";
$('body').css('background', 'url(' + img.src + ')');
$('body').css('background-size', img.width + 'px' + img.height + 'px');
});
問題があるが、画像の幅と高さはdocument.readyの時にロードされていないので、値は空白になっています。 (コンソールからはアクセスできますが、以前はアクセスできません)。
img.onload = function() { ... }
は幅と高さを取得しますが、DOM $(element)
呼び出しはimg.onloadからアクセスできません。
要するに、私はjavascriptでちょっと錆びていて、画像パラメータをDOMに同期させる方法を理解できません。任意のヘルプをいただきありがとう
編集:jQueryのバージョンは1.4.4です、更新することはできません。
を私は問題を理解していませんimage onloadハンドラを使用します。また、これは単純化された例だと思いますが、それに基づいて、おそらくあなたが行ったマークアップを生成しているだけでしょう。いいえ? –
応答への歓声。私が見ることのできるところから、$( 'body')への呼び出しはimg onload内でfeasbileではありません。 (彼らはTypeErrorで戻ってきています:.cssをnullから呼び出せません) – PlankTon
これは正しいとは言えません。おそらく何かが '$'をシャドーイングしているでしょうか?あなたの実際のコードは '$ .noConflict'を使用していますか? –