尝试让jCarousel在单击Next按钮时获取新的记录集

时间:2009-06-30 12:32:11

标签: jquery

过去两天我一直在努力让这个东西给我打电话 getJSON并根据carousel.last获取一组新记录 单击下一个按钮时的值。它在启动时加载3张图片 很好,但是没有启用下一个按钮,因为我只有3个 已加载,队列中不再有余留。我不想要任何 挥之不去。

看看这个例子,这是我想要做的,而是 使用我的getJSON方法获取新的图像集:

http://sorgalla.com/projects/jcarousel/examples/dynamic_flickr_api.html

所以这是我的代码,但它不起作用意味着我加载3个图像和 下一个按钮未启用。即使我加载4张图片(以获得 下一个按钮是可点击的,因为我已经加载了4个图像,它知道 除了3)之外还有另外一个,它不会去取一个 新的3张图片集:

<script src="../scripts/jquery-1.3.2.min.js" type="text/javascript"></
script>
<script src="../scripts/jquery.jcarousel.pack.js" type="text/
javascript"></script>
<link rel="stylesheet" type="text/css" href="../css/
jquery.jcarousel.css" />
<link rel="stylesheet" type="text/css" href="../css/skin.css" />

<script type="text/javascript">

jQuery(document).ready(function()
{
    $('#mycarousel').jcarousel({
        itemLoadCallback: mycarousel_itemLoadCallback
    });

});

function decode(s)
{
    return s.replace(/&amp;/g, "&")
            .replace(/&quot;/g, '"')
            .replace(/&#039;/g, "'")
            .replace(/&lt;/g, "<")
            .replace(/&gt;/g, ">");

};

function mycarousel_itemLoadCallback(carousel, state) {

    carousel.lock();

        //for (var i = carousel.first; i <= carousel.last; i++) {
            mycarousel_itemAddCallback(carousel, carousel.first,
carousel.last);
        //}

};

function mycarousel_itemAddCallback(carousel, first, last) {
    // Unlock
    carousel.unlock();

    $.getJSON("http://localhost:59396/xxx/xxxHandler.ashx?
action=carouselproducts&setsize=3" + "&cfirst=" + carousel.first +
"&clast=" + carousel.last,
        function(data) {
            carousel.size(data.length);
            $.each(data, function(i, item) {
                carousel.add(i, decode(item.ImageTag));
                if (i == 3) return false;
            });
        });

};

</script>

</head>
<body>
    <form id="form1" runat="server">
        <div>
            <ul id="mycarousel" class="jcarousel-skin-ie7">
                <!-- this will be dynamically populated -->
            </ul>
        </div>
    </form>
</body>
</html>

我不知道在这里尝试什么,或者如何让它像那样工作 例。我认为我不需要所有的分页逻辑,因为我是 不使用Flickr,我想将下一组基于fetch 通过点击下一个或上一个按钮调用我的getJSON,在轮播的第一个和最后一个索引上。

1 个答案:

答案 0 :(得分:0)

我拿了你的代码并在FF4和IE9中运行它。启用了下一个按钮,我甚至看到当我点击下一个图标时进行的ajax调用。您的问题浏览器是否具体?

enter image description here