1

私のサイトのヘッダー内には、次を使用して構築されたメイン ナビゲーションがあります。

私の質問は、どのように if else ステートメントを記述して (これが最善の方法であると仮定して)、ロードされたコンテンツをメイン ナビゲーションに対してチェックすることができるかということです。たとえば、読み込まれたコンテンツには、ヘッダー内のクリックされたリンクの data-attribute の ID と一致する ID を持つラップされた div が含まれます。私が達成しようとしているのは、データ属性がロードされたコンテンツの ID と等しい場合、メイン ナビゲーション ハイパーリンクに一意のクラスを与えるステートメントです。

<header id="header">
    <ul>
        <li><a href="external.html" data-section="intro">intro</a></li>
        <li><a href="external.html" data-section="interactive">interactive</a></li>
        <li><a href="external.html" data-section="portfolio">photography</a></li>
    </ul>
</header>

たとえば、最初のリンクをクリックすると、external.html ドキュメント内の id="intro" を持つ div がページに読み込まれます。このシナリオでは、html は data-section = "intro" のハイパーリンクと、id = "intro" の div を表示します。

データ セクション値を持つヘッダー ナビゲーション項目を与えるために jquery で if else ステートメントをバインドする方法を知りたいです (コンテンツは .load() を介してロードされているため、ステートメントをバインドする必要があると思います)。 div の id 値に一致する一意のクラス、つまり「アクティブ」

最初のリンクがクリックされたときに読み込まれるコンテンツの例

<section id="intro" class="clearfix">
    <div>
        <h1>Bigger Thinking</h1>
        <h2>It’s what I aim to do on every project, big or small, rich or poor</h2>
    </div>
</section>
4

1 に答える 1

0

これを試して:

var id = $('section').attr('id');
$('#header a').removeClass('unique')
$('#header a[data-section="'+ id +'"]').addClass('unique')
于 2012-07-09T14:03:03.120 に答える