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
}
}
});
});
});
在您的第一次点击时,您正在清空#slides
元素(通过调用html("")
)并重新填充新内容。然后调用slidesjs()
。这很好。在第二次点击时,再次清空#slides
,添加新内容并再次尝试调用slidejs()
。然而,这一次,slidesjs
已经初始化了这个元素一次,所以它不会再初始化了,即使内容已经改变了。
要解决这个问题,您可能需要完全remove
#slides
元素,并再次添加一个新的(未初始化的)元素。这样,slidesjs()
将在新的元素/内容上正确工作。