1

画像を JavaScriptImageオブジェクトにロードするとき、loadイベントが image に対してトリガーされるとi、その後i.completetrue. それが起こっていないか、(おそらく、おそらく) jQuery/JavaScript コードにバグがあります。

コード (かなり省略されていますが、関連するものはここにあると確信しています)

$img = $('<img />');  // This line added by edit for clarification
var eventData = {
        sheet: this,
        resolution: resolution,
        i: i,
    };

$img.bind('load', eventData, onTileLoad);
$img.attr('src', tile.src);

onTileLoad = function(ev) {
    var sheet = ev.data.sheet;
    var resolution = ev.data.resolution;
    var i = ev.data.i;

    if (!this.complete) {
        console.log('Image load not complete: sheet ' + sheet.sheetName + 
                ', resolution ' + resolution + ' tile ' + i)
    };

    ....
};

このコンソール ログは、私の画像の一部をトリガーしますが、ほとんどではありません。私はそれが決してトリガーされるべきではないと思います。ちなみに、私は FireFox 3.6.18 で作業しています (これは非常に安定しており、優れた開発ツールを備えているためです)。

何が起こっているのか知っている人はいますか?

4

1 に答える 1

0

$imgを指しますか?

onTileLoad関数では、thisを参照し$imgます。が jQuery オブジェクトの場合$img(そのように見えます)、completeプロパティはありません。completeプロパティは DOM オブジェクトでのみ設定されます。

これを見てくださいtest case

これが役立つことを願って、

乾杯

于 2011-07-05T19:56:07.810 に答える