基本上,我点击链接 - >将其内容加载到新内容div中 - >移动和删除旧内容 - >使新内容成为当前内容。
我正在使用jquery加载函数。当然,考虑到它的加载方式,dom看不到新的内容。我曾希望使用#page a
是最好的,因为#page
是dom上的常量。
这很明显,第一次加载页面时却起作用,但从那以后就不行了。
我需要jquery来识别新加载内容的点击。我知道这是可能的,但我找不到方法。
$('#page').append('<div id="new-content"></div>');
$('#page a').on('click', function(e){
console.log('click');
var topHeight = $('.site-header').height();
var comp = new RegExp(location.host);
if(comp.test($(this).attr('href'))){
// a link that contains the current host
e.preventDefault();
var contentURL = $(this).attr('href');
$('#new-content').load(contentURL+" #content",function(){
var newContent = $(this);
$('#content').first().animate({'left':'-100%'},function(){
$(this).remove();
newContent.find('#content').unwrap();
$('#page').append('<div id="new-content"></div>');
pageHeight = $('#content').height();
$('#slide-out').css({'height':pageHeight});
});
}).css({'top':topHeight});
}
});
答案 0 :(得分:1)
您必须使用on()
的委托版本,如下所示:
$('#page').on('click', 'a', function(e){ ...