如何確定在IE中的onload和onerror事件處理程序中觸發事件的圖像的圖像src?這個例子的代碼,我扔在一起:在IE中的onload和onerror事件處理程序中確定圖像src
<script language="javascript" type="text/javascript" src="jquery.js"></script>
<script language="javascript" type="text/javascript">
function loadImages() {
var goodImage = new Image();
var missingImage = new Image();
$(goodImage).bind('load', function(event){
$("#log").append($(event.target).attr('src') + ' WAS FOUND <br>');
});
$(missingImage).bind('load', function(event){
$("#log").append($(event.target).attr('src') + ' WAS FOUND <br>');
});
$(goodImage).bind('error', function(event){
$("#log").append($(event.target).attr('src') + ' IS MISSING <br>');
});
$(missingImage).bind('error', function(event){
$("#log").append($(event.target).attr('src') + ' IS MISSING <br>');
});
goodImage.src = 'GOOD-IMAGE.GIF'; // this image exists
missingImage.src = 'MISSING-IMAGE.GIF'; // this image doesn't exist
}
</script>
</head>
<body onload="loadImages();">
<div id="log"></div>
作品在FF,但在IE8它打印出不確定的$(event.target).attr( 'SRC')的一部分。我認爲jQuery應該規範IE的事件對象,以便它像其他瀏覽器一樣行事?我已經嘗試了一些排列組合,但一直未能在IE8中獲得任何東西。
無論如何,如果任何人有一個關於如何找出在IE中的onload和onerror事件處理程序中的圖像src的建議,我真的很感激。或者甚至在圖像加載後已經加載並且沒有(但不是圖形 - 我需要生成包含未加載的圖像的文件名的數組)的圖像後如何解決。謝謝!
德蘭 - 很好的嘗試,並感謝您的信息。我嘗試過,但IE8在這種情況下使用event.target(我相信,因爲jQuery重置事件對象的IE瀏覽器儘可能多的行爲,如符合W3C標準的瀏覽器),所以這並沒有解決我的問題。 – Bill 2010-05-08 14:16:47