当单击锚元素时,我想用 jQuery 加载 flexslider 库。图库应在 div#slider-loader 中加载
问题是 HTML 已正确加载,但 Javascript 似乎不会影响注入的元素,即使我读到在这种情况下我将使用 .on()。
$(document).on('click', '.cliccami' , function() {
var href = $(this).attr('href');
$('#slider-loader').load(href);
return false;
});
先感谢您!
--
使用回调函数在加载完成时执行操作,如下所示
甜的!有效!尽管使用这种解决方案, .on() 事件变得无用。现在我想出了这个并且它有效:
$('.cliccami').click(function() {
var href = $(this).attr('href');
var gallery_height = $('.flexslider').css('height');
$('#slider-loader').hide().fadeIn('slow', 'swing').load(href , function(){
$('.flexslider').flexslider({
animation: "slide"
});
})
return false;
});
唯一的问题是代码的注入非常分散。我想让 div 容器“#slider-loader”根据“.flexslider”高度调整其高度,并带有平滑的动画。
我试图做的是:
$(document).ready(function(){
$('#slider-loader').hide();
});
$(document).on( 'click', '.cliccami', function() {
var href = $(this).attr('href');
var gallery_height = $('.flex-viewport').css('height');
$('#slider-loader').load(href , function(){
$('.flexslider').flexslider({
animation: "slide"
});
$('#slider-loader').css('height' , gallery_height);
$('#slider-loader').slideDown(10000);
});
return false;
});
问题是,一旦我单击锚元素,#slider-container 开始滑动显示其内容,但对于我设置为变量并使用 .css( ) 方法。它向下滑动了几个像素,然后突然变成了整个 .flexslider 的高度。