我試圖設置寬度&我在javascript中創建的圖片元素的高度屬性。在FF中,Opera & Chrome設置正確的寬度&高度。但是,在IE 6 & 7(未嘗試8)中,寬度&高度保持爲0,直到下載圖像。我需要這個的原因是,我可以根據它的當前尺寸將每個圖像放在行& cols中。下載圖片之前的IE圖片寬度和高度= 0
如果無法在IE中設置寬度&高度屬性我想我只需要創建自己的自定義屬性並將其設置在那裏。
這裏是我用來創建&注入元素的基本代碼。
var img = document.createElement('img');
var wrap = document.createElement('div');
document.body.appendChild(wrap);
wrap.appendChild(img);
img.src = 'blah.jpg';
img.width = '100';
img.height = '100';
img.style.display = 'none';
// IE: width: 0 | height: 0
// FF: width: 100 | height: 100
alert('width: ' + img.width + ' | height: ' + img.height);
編輯:
我試過設置img.style.visibility =代替img.style.display '隱藏'= '無';但它沒有什麼區別。
編輯
我發現這個問題。實際的問題是Aziz解決方案和我在原始示例中遺漏的東西的組合。看來,如果你在分配寬度&高度IE之前將元素追加到另一個元素中,IE會忽略它。
你是如何創建圖像?標記是什麼樣的? http://www.catb.org/~esr/faqs/smart-questions.html – 2009-09-07 03:28:52
我已經添加了我正在使用的代碼的框架。 – Alex 2009-09-07 03:32:15
我無法使用您提供的代碼在IE6/IE7上進行復制。我甚至嘗試過大圖像以確保在圖像加載之前發生警報。警報顯示適合我的寬度/高度。 – jimyi 2009-09-07 03:46:51