2008-11-21 62 views
1

我有一個畫廊我很快就編寫了一個小網站,而Firefox 3和Safari 3下正常工作。但是,當我在我的老最好的朋友IE7測試,它似乎不火的imageVar.onload =函數(){//此處代碼} ..我想用停止負載效應和加載圖像。的JavaScript和IE7 - 爲什麼我的* .onload =函數(){}火?

請記住...

  • 我知道縮略圖只是縮小了較大的圖像的版本。當客戶端定義圖像時,我將創建適當的縮略圖。
  • 這是我第一次嘗試走出程序的JavaScript的大部分..所以請去容易,請讓我知道我的代碼很爛嘗試!

回答

5

成功使用圖像.onload,您必須在設置src屬性之前註冊事件處理程序方法。

在這一問題相關信息:

Javascript callback for Image Loading

+0

我該怎麼做? – alex 2008-11-21 00:27:50

+0

我已經添加了一個包含示例代碼片段的答案鏈接。 – keparo 2008-11-21 00:30:40

2

跨瀏覽器的事件支持也不是那麼簡單的,由於實現差異。既然你在你的網站使用jQuery,你是關閉使用其事件的方法標準化瀏覽器支持更好:的

代替:

window.load = function(){ 
     //actions to be performed on window load 
} 

imageViewer.image.onload = function(){ 
    //actions to be performed on image load 
} 

務必:

$(window).load(function(){ 
    //actions to be performed on window load 
}); 

$(imageViewer.image).load(function(){ 
     //actions to be performed on image load 
}); 
+0

奇怪的是,一些畫廊現在工作...點擊一些圖像縮略圖使圖像顯示在右側,但不顯示在其他圖像縮略圖上。聽起來很奇怪或什麼? 非常感謝您的輸入。 – alex 2008-11-21 00:27:11

0

加載文件時,只需添加到建議由伊蘭使用jQuery的內置的事件處理程序可以運行代碼和DOM被創建,但在圖像下載之前:

$(document).ready(function(){ 
    //your code 
}); 
相關問題