嗨,我有一个 jquery 内容动画,除了内容加载外,一切正常。
$(function() {
var newHash = "",
$mainContent = $("#main_content"),
$pageWrap = $(".big_col"),
$main_menu = $("a.main_menu"),
baseHeight = 0,
$el;
$pageWrap.height($pageWrap.height());
baseHeight = $pageWrap.height() - $mainContent.height();
$("body").delegate("a.main_menu", "click", function() {
window.location.hash = $(this).attr("href");
return false;
});
$(window).bind('hashchange', function(){
newHash = window.location.hash.substring(1);
if (newHash) {
$mainContent
.fadeOut(200, function() {
$mainContent.hide(function() {
$(".loader").show();
var page = newHash.replace(/\..+$/, '');
var page = page.replace(/!/, '');
var data = 'page=' + page;
$.ajax({
url: "main_content/action.php",
type: "POST",
data: data + "&request=ajax",
cache: false,
success: function (html) {
$mainContent.html(html);
$("#main_content").ready(function() {
//var loaded = 0;
$(".loader").hide();
_gaq.push(['_trackPageview', '/it_'+page]);
$mainContent.fadeIn(200, function() {
$pageWrap.animate({
height: baseHeight + $mainContent.height() + "px"
}, 300);
});
$main_menu.removeClass('current');
$('a[href="#' + newHash + '"]').addClass('current');
return false
});
//});
}
});
});
});
};
});
$(window).trigger('hashchange');
});
这是代码,我几乎尝试了我在堆栈溢出和其他站点上阅读的所有内容,但似乎没有任何效果(您在我粘贴的代码中看到的 .ready 只是我尝试的最后一件事)我尝试使用 .load,绑定加载, live load, img .lenght, .ready, 一切都选择图像或整个 div 但似乎仍然没有任何效果。
有什么建议么?谢谢
编辑的事情是,没有任何功能触发器,脚本工作得很好。如果我使用这些触发器中的任何一个(.ready 除外,但它没有做它应该做的事情),脚本会在那个触发器处停止(我隐藏加载器的地方)它不会再继续下去。