当没有足够的项目来填充所有空间时,我如何强制ContentFlow显示所有项目?

时间:2011-07-18 18:03:15

标签: javascript jquery flow

大家好好读这个..

我正在尝试使用ContentFlow.js

我在流程中有5个图像项目。内容流配置为在两侧显示7。而不是显示至少所有5个项目,它只显示其中的3个。功能还可以,但我希望展示所有项目:

<link rel="stylesheet" type="text/css" href="/js/ContentFlow/contentflow.css" media="screen" />
<script type="text/javascript" src="/js/ContentFlow/contentflow.js"></script>
<script tyle="text/javascript">
    var cf = new ContentFlow('contentFlow', {reflectionColor: "#ffffff",visibleItems:7,scaleFactor:1.3,circularFlow: false});
</script>

...

<div class="item">
    <img class="content" src="image.png" />
</div>

(此代码简化为显示示例)

2 个答案:

答案 0 :(得分:1)

如果您要显示的图像数量是动态的,您可以在加载ContentFlow之前检查计数吗?如果它低于7,则将visibleItems设置为该值...否则使用7。

答案 1 :(得分:0)

您可以直接在contentflow的源代码中修复此问题。我刚遇到同样的问题并追查它。

所以只需打开contentflow_src.js并查找“_positionItems”函数。您将找到以下代码行:

for (var i=1; i <= this.conf.visibleItems && 2*i < this.items.length ; i++) {

只需将其替换为:

for (var i=1; i <= this.conf.visibleItems && i < this.items.length ; i++) {

对我而言这很好用,但我还没有进一步测试过,所以这个“脏”修复可能会在其他情况下导致错误。使用风险由您自己承担:p