デフォルト状態の非表示のリスト要素を持つ ul があります。
$(function () {
$("li.closed > ul").hide();
});
クリックすると、非表示のリスト要素がトグルで表示されます。
$("ul > li.closed").click(function () {
var li = $(this).closest('li');
li.find(' > ul').slideToggle('fast');
$(this).toggleClass("closed open");
});
すべてがうまく機能しています。しかし、別のページにアクセスして前のページに戻ると、トグルが機能しなくなります。クリックすると、トグルアウトしてすぐに元に戻ります。
これでリンクをdivにロードしています:
$(".link").click(function (e) {
// Prevent the default action of the event
e.preventDefault();
var linkHref = this.id + '.html';
$("#content").load(linkHref);
$("#nav a.active").toggleClass('inactive active');
$(this).addClass("active").removeClass('inactive');
});
したがって、私のhtmlページはボディ部分のみが存在し、毎回global.jsをロードしていますが、これは問題になる可能性がありますか(キャッシングなどで)? このような:
<script src="js/global.js" type="text/javascript"></script>
<article>
<ul>
<li class="closed">Headline
<ul>
<li class="fl"><a href="#"><img src="x.png"></a></li>
<li class="fl"><a href="#"><img src="x.png"></a></li>
</ul>
</li>
</ul>
</article>