2012-03-18 29 views
1

我正在使用JCarousel显示5个div的循环传送带。所有的LI div都有使用“onClick”事件调用Javascript函数的按钮。按钮全部按预期工作,直到您到达最后一张(第五张)图像并且传送带继续第一个项目。新克隆的li项目现在无法调用javascript函数。JCarousel克隆的项目无法调用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

我有同样的问题,它似乎是jcarousel中的错误。为了解决它,我不得不将我的点击事件移到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"); 
} 
+0

非常有趣,感谢您的回应。我会给它一个镜头。 – Russdogg 2012-06-04 20:23:22