部分jQuery函数只执行一次。幻灯片js只调用一次

时间:2013-04-15 22:37:57

标签: jquery

jquery函数的第二部分只执行一次 幻灯片js部分$('#slides').slidesjs()在第一次点击时工作一次,在第二次点击时不工作等。 警报部分和htlm替换是可以的。 任何帮助将非常感激。感谢

$(document).ready(function(){
   $(".linkA").live("click", function(){
      $("#slides").html("");
      var jQueryfilterType = (jQuery(this).parent().parent().html());
      $("#slides").html(jQueryfilterType);
      $("#slides a").contents().unwrap();
      $("#slides li").contents().unwrap();

      alert("test");

      $('#slides').slidesjs({
         width: 940,
         height: 528,
         navigation: {
            effect: "fade"
         },
         pagination: {
            effect: "fade"
         },
         effect: {
            fade: {
               speed: 400
            }
         }
      });
   });
});

1 个答案:

答案 0 :(得分:2)

首次点击时,您将清空#slides元素(通过调用html(""))并使用新内容重新填充它。然后你打电话给slidesjs()。所以这很好。在第二次点击后,您再次清空#slides,添加新内容并尝试再次呼叫slidejs()。但是,这次,slidesjs已经初始化了该元素一次,所以即使内容已经更改,它也不会再次执行。

要解决此问题,您可能希望完全remove #slides元素并再次添加新的(未初始化的)元素。这样,slidesjs()将在新元素/内容上正常工作。