在页面加载后将JCarousels添加到列表时出现问题

时间:2012-02-11 14:51:37

标签: javascript jquery ajax jcarousel carousel

我有一个加载的页面,然后根据几个AJAX请求的结果动态填充多个列表。在我将所有数据恢复后,我想在每个列表中添加一个JCarousel,并且无法使其工作。我现在尝试了几件事但仍然没有运气。我目前有以下内容:

在我的标题中

$('.myindcaras').jcarousel({
    vertical: true
});

我的PHP页面控制显示:

<ul id="uniqueid"></ul></div>

我的.JS javascript文件 - 尝试在此创建/ popualate轮播:

在这里我得到document.getElementById(uniqueid),然后我添加了类信息:

ul.className = "myindcaras jcarousel-skin-tango" 

将其链接到标题中的轮播数据。

执行完其他任务并完成所有AJAX响应后,我尝试创建/添加我的轮播:

var mylistElement = document.getElementById('uniqueid').getElementsByTagName('li');
var lengthofList = mylistElement.length;
var carouseltoaddTo = '';
carouseltoaddTo = $('#uniqueid').data('jcarousel');         

if (lengthofList > 0) { 
    for (i = 0; i < lengthofList; i++) {                            
    datatoAdd = mylistElement[i].innerHTML;                     
    carouseltoaddTo.add(i, datatoAdd);                      
    }
}

从这一切我得到错误: carouseltoaddTo未定义

我认为一个问题是我可能不会首先正确地初始化旋转木马。其次,我不确定我是否正确地引用了旋转木马来添加所有列表项。

非常感谢任何帮助,谢谢。

1 个答案:

答案 0 :(得分:1)

我现在已经解决了这个问题。我把事情做得太过分了!我通过简单地将原始轮播创建代码从标题移动到我的handleresponse函数来修复它:

$('.myindcaras').jcarousel({
vertical: true
});

然后当我收到我的所有AJAX响应时执行。