我在这里遇到了一个奇怪的情况。我有三个链接正在使用 ajax 加载内容。第一次按下这三个链接中的一个时,内容会向下滑动,但我希望下一个 li 根据它们在主菜单中的位置向左/向右设置动画。现在它们被附加到#content 元素中。
我想要的是从一开始就给加载的内容一个特定的索引..作为出现在主菜单中的索引..
你可以在http://www.open mind.ro/看到一个例子
这是我现在正在使用的脚本:
// JavaScript Document
$(document).ready(function(){
$("#main-menu a").click(function(e){
e.preventDefault();
var $a = $(this);
var $clicked = $a.attr('href').substr(1);
if($('#logo').hasClass('unmoved')) {
$('#logo').animate({marginTop:'30px'}, 500, function(){
$a.removeClass('unmoved').addClass('moved');
});
}
$("#main-menu .active").removeClass('active');
$a.addClass('active');
if($('#content ul li.' + $clicked).length == 0) {
$.ajax({
url: '/resources/ui' + $(this).attr('href') + '.php',
cache: false
}).done(function(html) {
if($('#content ul').html().trim().length == 0) {
$("#content ul").html(html).find('li').slideDown(500);
} else {
$("#content ul").css('width',($("#content ul").width() + 900) + 'px');
$('#content ul').append(html).find('li.' + $clicked);
$a.trigger('click');
}
});
} else {
$('#content ul').animate({left:-$('#content ul li.' + $clicked).index() * 900 + 'px'}, 500, 'easeInQuart');
}
});
});
现在,如果您按顺序按链接,一切正常:关于我们/投资组合/联系但如果您从投资组合链接开始,然后按关于我们..您会看到关于我们在投资组合之后,但它必须在它之前..我想从一开始就设置它的索引..
当我加载它时,我想在索引 0、投资组合 1 和联系人 2 处设置关于我们,而不依赖于这三个链接之一是否已被按下
有解决办法吗?或者我必须以艰难的方式做到这一点?