3

我将 cufon 与 jCarousel 一起使用。

Carousel 中有五个项目,并且从右向左旋转——换句话说,它们离开屏幕向左。你可以在这里看到它。

http://www.foursquare.org/site/test

如果我让轮播保持默认行为,它会到达第 5 张幻灯片,然后快速滑回右侧,一切正常显示。

如果我将轮播设置为“圆形”,则 cufon 标题会在第一次旋转后消失;即,当第一张幻灯片附加到最后一张幻灯片的右侧时,它们不会随幻灯片的其余部分一起提供。

你知道我可以做些什么来让 jCarousel 和 Cufon 合作或交流,这样头条新闻就不会在这种情况下消失吗?

TTFN 特拉维斯

4

5 回答 5

2

如果您的 jcarousel 自动旋转,则需要将 Cufon.Refresh() 附加到动画函数。

对于我们的轮播,我们在 jcarousel 上使用了“itemVisibleOutCallback”参数,并将 Cufon.Refresh() 附加到“onAfterAnimation”调用中。

这是一个例子:

jQuery('#myCarousel').jcarousel({
        scroll: 1,
        wrap: 'circular',
        animation: 1500,
        auto: 7,
        itemVisibleOutCallback: {
            onBeforeAnimation: carouselAnimateStart
        }
    });

function carouselAnimateStart(){
    Cufon.refresh();
}

亚历克斯

于 2011-06-29T10:51:42.240 回答
1

我用 coda-slider 的变体遇到了这个问题。什么似乎对我有用,而不是使用

visibility:hidden

我用了

display:none

display:block 

揭示。

于 2011-01-21T22:48:18.260 回答
0

我最终做的是每次轮播移动到下一个项目时,我调用 Cufon.replace 函数,以便它为相关文本重新渲染 cufon。

IE

$(document).ready(function(){
  $j('.jcarousel-prev').click(function(e){
    Cufon.replace('li.jcarousel-item h3');
  });
  $j('.jcarousel-next').click(function(e){
    Cufon.replace('li.jcarousel-item h3');
  });
});

但是,我在 IE 中对 jCarousel 有自己的问题,它似乎在我使用上述 jQuery 代码的隐藏轮播项目上双重写入 cufon。如果有人遇到并解决此问题,那将非常有帮助。如果我事先找到修复程序,我会在这里发布:)

于 2010-12-01T15:51:22.693 回答
0

在 jCarousel lite中,我使用以下代码:

beforeStart: function() {

    Cufon.refresh();

},
afterEnd: function() {

    Cufon.refresh();            

}

现在似乎很有效 - 但我还没有在 Mac 上的 Firefox 中测试过。不过谢谢你的帖子。它帮助了我,我希望这对其他人有所帮助。

干杯,迈克尔。

于 2011-07-11T09:54:25.110 回答
0

Alex 有一个好主意,但您无法在每个 itemVisibleOutCallback 处刷新所有 cufon 对象。这将给你一个slooooowdown。

再想一想,当您单击“下一步”按钮时,Cufon 会刷新在页面加载时发生转换的每个元素 - 那么某些浏览器可能会遇到问题。

所以正确的解决方案是只替换特定的元素,你可以这样做:

$("#carousel").jcarousel({
    itemVisibleOutCallback: {
        onBeforeAnimation: function() {
            Cufon.replace("#carousel h2, #carousel li > div > a", {fontFamily: 'YourFont', hover: true});
        }
    }
});
于 2012-05-28T14:06:57.300 回答