WPメニューシステムを使用するWordpressのメニューがあります。すべてのリンクは、基本的に次のものを出力するカスタム リンクです (簡潔にするために WP クラスは削除されています)。
<ul>
<li><a href="http://mysite.com/about">About</a>
<ul>
<li><a href="http://mysite.com/about/#section-1">Section 1</a></li>
<li><a href="http://mysite.com/about/#section-2">Section 2</a></li>
<li><a href="http://mysite.com/about/#section-3">Section 3</a></li>
</ul>
</li>
<li><a href="http://mysite.com/services">Services</a>
<ul>
<li><a href="http://mysite.com/services/#section-1">Section 1</a></li>
<li><a href="http://mysite.com/services/#section-2">Section 2</a></li>
<li><a href="http://mysite.com/services/#section-3">Section 3</a></li>
<li><a href="http://mysite.com/services/#section-4">Section 4</a></li>
</ul>
</li>
</ul>
親ページが表示されている場合は URL のドメイン部分を削除しようとしているので、About ページを表示している場合、メニューのリンクは次のように変わります。
<li><a href="http://mysite.com/about">About</a>
<ul>
<li><a href="#section-1">Section 1</a></li>
<li><a href="#section-2">Section 2</a></li>
<li><a href="#section-3">Section 3</a></li>
</ul>
</li>
<li><a href="http://mysite.com/services">Services</a>
<ul>
<li><a href="http://mysite.com/services/#section-1">Section 1</a></li>
<li><a href="http://mysite.com/services/#section-2">Section 2</a></li>
<li><a href="http://mysite.com/services/#section-3">Section 3</a></li>
<li><a href="http://mysite.com/services/#section-4">Section 4</a></li>
</ul>
</li>
</ul>
私がjQueryで抱えている問題は、ページが不明であるため、特定の各ページをターゲットにできないことです。したがって、URLを取得してメニューの正しい部分と一致させてリンクを変更する必要があります。私はこれを試しましたが、あまりにも具体的です:
if (window.location.href.indexOf("about") != -1) {
//do something
} else {
//do something else
}
編集
現在のページのメニュー内のリンクのみを変更したい。これまでの回答は、メニュー内のすべてのリンクを変更します。同じページにあるリンクをターゲットにしたいだけです。