ここで奇妙な状況が発生しています.. ajax でコンテンツをロードしている 3 つのリンクがあります。これらの 3 つのリンクのいずれかを初めて押すと、コンテンツが下にスライドしますが、メイン メニューの位置に応じて、次の 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');
}
});
});
現在、リンクを順番に押すとすべてが正常に機能します: About us / Portofolio / Contact ですが、Portofolio リンクから始めて About us を押すと、About us が Portofolio の後にあることがわかりますが、その前にある必要があります。 ..最初からインデックスを設定したい..
ロードするときに、これらの 3 つのリンクのいずれかが以前に押された場合に依存せずに、インデックス 0、ポートフォリオ 1、連絡先 2 に About us を設定したい
解決策はありますか?または私は難しい方法でそれをしなければなりませんか?