我正在嘗試獲取圖像的尺寸以便稍後在我的腳本中使用。直接使用jQuery選擇img元素可以很好地工作,但是它在webkit瀏覽器中不起作用(在函數調用時圖像未加載)。我試圖通過使用jquery load()函數來加載圖像後設置變量的解決方案。爲什麼我的Javascript變量沒有被設置在這個函數之外?
爲什麼我的變量沒有被根據需要設定?
function startSlider() {
if (1 == 1) {
var bImg = $('#banner img');
var bWidth = 111, bHeight = 222;
$("<img/>")
.attr("src", $(bImg).attr("src"))
.load(function() {
bWidth = this.width;
bHeight = this.height;
console.log('inner: ' + this.height);
});
console.log('outer: ' + bHeight);
}
}
$(window).load(startSlider(skin));
輸出
outer: 222
inner: 333
示例源
<div id="banner">
<img src="/path/to/image.jpg" />
</div>
我不相信你會得到「外部」線** **後「內部」一個 – zerkms
謝謝,我讓他們誤逆轉。 –
什麼圖像是由JavaScript創建的?或者只是通過html標籤創建? – viyancs