2

我正在尝试将名为ImageFlow的 javascript 集成到 Joomla 站点中,但在 Internet Explorer(v8 本机和兼容模式)中出现错误,并且不会显示。它在 Firefox 和其他浏览器中运行良好)。

我相信该错误与 mootools 有关。错误详情:

消息:对象不支持此属性或方法
行:48
字符:27
代码:0
URI:[域]/media/system/js/mootools.js

消息:对象不支持此属性或方法
行:953
字符:4
代码:0
URI:[域]/media/imageflow/imageflow.js

mootools 第 48 行(缩小)的开头是:

if(!this.addEventListener)fn=fn.create({'bind':this,'event':true});

相关的图像流代码是:

/* Just in case window.onload happens first, add it to onload
using an available method.*/
if(typeof addEvent !== "undefined")
{
    addEvent(window, "load", run); // <-- line 953
}
else if(document.addEventListener)
{
    document.addEventListener("load", run, false);
}
else if(typeof window.onload === "function")
{
    var oldonload = window.onload;
    window.onload = function()
    {
        domReadyEvent.run();
        oldonload();
    };
}
else
{
    window.onload = run;
}
4

2 回答 2

3

我找到了一个解决方案:从图像流代码中删除第一个 if 子句。我不知道它是否适用于旧版浏览器,但没有它,该脚本在 IE 6-8 和适当的浏览器中运行良好。

于 2009-07-24T23:17:07.060 回答
0

我曾经在灯箱和 mootools 上遇到过类似的问题。我通过找到一个基于 mootools 的灯箱实现来解决它(实际上更好)。如果不能,那么我建议将 ImageFlow 放入 iframe,这样两个脚本就不会冲突。

于 2009-07-22T16:44:43.003 回答