1

我正在使用一个名为ImageFlow的 javascript 脚本。它在 FF/Chrome 中运行良好,但是非常缓慢且很麻烦。

在 IE (9,8,7) 中,它根本拒绝加载。没有 JS 问题,我无法发布代码,因为代码太多而且我也没有对任何网站进行编码,所以不知道是什么触发了它出错。

演示站点是http://crofts.propertylogic.net,图像流的 JS 可以在http://crofts.propertylogic.net/coverflow/imageflow.js找到。如您在 chrome/ff 上所见,该效果旨在与团队成员一起插入页面中间的白框。如果有人能指出我正确的方向,那就太好了。

4

5 回答 5

2

我无法为您修复代码,但我可以基本上告诉您为什么它在 IE9 中不起作用。找到 'myImageFlow' div 的 init 事件在该 div 被读入 DOM 之前发生。我相信这是因为 ImageFlow 插件模仿 IE 的 DOMContentLoaded 事件的方式。ImageFlow 插件使用自 08 年 5 月以来未更新的DOMContentLoaded 插件。我敢打赌,这个库已经过时了,因此它破坏了 ImageFlow,它看起来也已经过时了。

老实说,我建议您寻找更现代的插件。如果这没有帮助,请尝试弄乱 DOMContentLoaded 部分,看看您是否可以弄清楚为什么它在 IE9 中延迟时间不够长(使用调试器 F12)。

于 2011-10-14T20:12:53.720 回答
1

如果您没有对任何站点进行编码,则很可能您也没有在该站点上安装 imageflow。但是安装已经涵盖了,对吧?或者可能不是!

http://finnrudolph.de/ImageFlow/Installation

<div id="unique_name" class="imageflow"> 
    <img src="dir/image_1.jpg" longdesc="URL_1" width="w_1" height="h_1" alt="Text_1" />
</div>

为了与 Internet Explorer 完全兼容,必须在 XHTML 中设置图像宽度和高度参数(w_x 和 h_x)。对不起,这额外的工作量 - 除了微软的 Internet Explorer 之外的每个浏览器都可以通过 JavaScript 获取正确的图像尺寸!

这意味着您是否必须将图像尺寸插入服务器端的 xhtml 中,即我认为。目前正在这样做吗?

于 2011-10-10T12:13:21.170 回答
1

检查了 IE8 上的网站,似乎在动画位上工作正常,只有图像看起来垂直拉伸。

于 2011-10-12T17:53:55.753 回答
1

你可以使用 jQuery 来解决这个问题——一切都是正确的 dom 处理程序是问题所在。

$(document).ready() is the key

$(document).ready(function()
{
    var circular_3 = new ImageFlow();
    circular_3.init({ ImageFlowID: 'imageflow1',
        //circular: true,
        reflections: false,
        reflectionP: 0.4,
        slider: false,
        captions: false,
        opacity: true,
        xStep: 250,
        imageFocusM: 1.5,
        startID: 2
    });
于 2011-12-15T05:55:56.110 回答
0

我知道现在回答这个问题有点晚了。InvisibleBacon 是正确的,因为 domReady 代码自 2008 年以来没有被修改,但我检查了 domReady 代码,它确实适用于 IE 5 到 11、Firefox、Chrome、Mobil Chrome、Safari 和 Mobile Safari。我没有用 Opera 检查代码。

在这种情况下,我会说问题出在您使用的 imageflow.js 代码上,我看到您不再使用它。

于 2014-03-18T22:32:33.443 回答