JCarousel克隆了无法调用javascript函数的项目

时间:2012-03-18 03:35:00

标签: javascript jcarousel

我正在使用JCarousel来显示5个div的圆形旋转木马。所有LI div都有按钮,使用“onClick”事件调用Javascript函数。按钮全部按预期工作,直到您到达最后(第五)图像并且轮播再次继续第一个项目。新的克隆li项目现在无法调用javascript函数。

//SAMPLE LIST ITEM 
<li>
    <div class="carousel-item">
       <div id="item01">
           <a href="javascript:void(0)" id="btn-01" onClick="itemsData('http://google.com')">Click Me</a>
         </div>
       </div>
  </li>
 //SAMPLE CALLED FUNCTION
var itemsData = function (uri) 
{
    console.log("LINK CLICKED");
}

任何有关让克隆项目能够调用js函数的帮助都将非常感激。我很抱歉,如果这是一个重复的帖子,但经过2个多小时的搜索,我认为是时候问了。谢谢!

1 个答案:

答案 0 :(得分:2)

我有同样的问题,它似乎是jcarousel中的一个错误。为了解决这个问题,我不得不将click事件移动到initCallback函数中。例如:

        jQuery('#teaserHomePageItems').jcarousel({
            initCallback: teaserHomePageItems_initCallback
        });


    function teaserHomePageItems_initCallback(carousel) {
        jQuery('.jcarousel-control a').bind('click', function () {
            //alert(jQuery(this).attr('id'));
carousel.scroll(jQuery.jcarousel.intval(jQuery(this).attr('id')));
        DoWork(jQuery(this).attr('id'));//passing the id of the element to DoWork allows me to do anything with it.
            return false;
        });


function DoWork(idName)
{
        jQuery('#' + idName).attr("src", "someimage.png");
}