-1

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
            }
         }
      });
   });
});
4

1 回答 1

2

在您第一次单击时,您正在清空#slides元素(通过调用html(""))并用新内容重新填充它。然后你调用slidesjs()它。所以这很好用。在您第二次单击时,您#slides再次清空,添加新内容并再次尝试调用slidejs()。但是,这一次,slidesjs已经初始化了那个元素一次,所以它不会再做一次,即使内容已经改变了。

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

于 2013-04-15T22:47:50.197 回答