0

我有一个改变的回调函数

window.location.href = url;

但是,在检查图像是否存在于不同页面(和不同域)中后调用此回调。我的问题是 IE9 不允许我执行以下操作:

        $(testImage)
            .bind("load readystatechange", function (e) {
                if (this.complete || (this.readyState === 'complete' && e.type === 'readystatechange')) {
                    callbackFunction(true);
                }
            })
            .bind("error abort", function () {
                abort();
            })
            .attr("src", testUrl);

但是,IE9 将允许我这样做:

callbackFunction(true);

但是因为我想等待并看到我的图像存在,所以我需要上面的工作。(我不想更改 IE 设置)当然,在 Chrome 中一切正常。

有人有什么想法吗?

编辑:我想我应该澄清一下:“当我说 ie9 不会让我这样做时。”我的意思是 ie9 执行回调但里面的代码(更改 url)不起作用。

4

1 回答 1

0

IE 还支持load图像事件,除非您有其他未提及的原因,否则您不必明确检查属性。.readyState

所以这绝对足够了

$( testImage ).on('load', function( e ) {
    callbackFunction( true );
});
于 2012-09-20T10:04:03.230 回答