我正在尝试使用 http://net.tutsplus.com/tutorials/javascript-ajax/how-to-load-in-and-animate-content-with-jquery/ 并且我自己修改了它,我添加了fancybox和tinyscrollbar它在第一个工作,然而,在我在一些页面之间切换它不再工作。我试着在教程页面的评论中找到我的答案,我使用.live()但它接缝它不起作用我无法找出解决方案, 听到我的代码:
$(document).ready(function() {
var hash = window.location.hash.substr(1);
var href = $('#nav li a').each(function(){
var href = $(this).attr('href');
if(hash==href.substr(0,href.length-5)){
var toLoad = hash+'.html #content';
$('#content').load(toLoad)
}
});
$('#nav li a').live ('click', function(){
var toLoad = $(this).attr('href')+' #content';
$('#content').slideToggle('fast',loadContent);
$('#load').remove();
$('#wrapper').append('<span id="load">LOADING...</span>');
$('#load').fadeIn(500);
window.location.hash = $(this).attr('href').substr(0,$(this).attr('href').length-5);
function loadContent() {
$('#content').load(toLoad,'',showNewContent())
}
function showNewContent() {
$('#content').show(500,hideLoader());
}
function hideLoader() {
$('#load').fadeOut(500);
}
return false;
});
$("#scrollbar1").tinyscrollbar();
$("a#example1").fancybox();
});
谢谢你,
安德鲁
答案 0 :(得分:0)
当没有完整的页面可供查看时,很难看到您尝试做什么。但我认为问题在于,当您加载新内容时,您应该相应地更新滚动条和fancybox。
对于tinyscrollbar,您可以使用更新方法。
您可以在tinyscrollbar网站上看到如何使用它。
您可以尝试将其置于加载事件的成功回调中。
$( “#scrollbar1”)tinyscrollbar_update();
您可以尝试将该规则放在hideLoader函数或showNewContent函数的末尾。