リンクが現在のURLに属している場合は、メニューからリンクの外観を変更する必要があります。現在のURLを検出して要素クラスを変更する方法がわかりません。
jQueryを使用します
ありがとう
リンクが現在のURLに属している場合は、メニューからリンクの外観を変更する必要があります。現在のURLを検出して要素クラスを変更する方法がわかりません。
jQueryを使用します
ありがとう
$( document).ready(function (){
$( function(){
var url = window.location.pathname,
urlRegExp = new RegExp(url.replace( /\/$/,'' ) + "$" );
$('a').each( function(){
if(urlRegExp.test(this .href.replace(/\/$/, ''))){
$( this).addClass('active' );
}
});
});
});
あなたにできることは
.indexOf('.html')
(またはあなたの拡張機能)を使用する.substr(url.lastIndexOf('/'))
(これによりページ名が表示されます)を使用しますclass
セレクターまたはid
セレクターで使用しますactive
ページの読み込み時にそのリンクにクラスを起動しますこれがどのように進むかを以下に示します。
これがあなたのURLだとしましょう:http://localhost/myWebsite/index.html
$(function(){ // this is done on doc ready function
var url = window.location;
var dUrl = url.substr(0, url.indexOf('.html'));
var link = dUrl.substr(dUrl.lastIndexOf('/')+1);
$('#'+link).addClass('active'); // on page load this will add the class to the corresponding link
});
このデモを試すことができます:http://jsfiddle.net/K9YAz/
のプロパティを使用してwindow.location
、現在のページのURLまたはURLの必要な部分を取得できます。次に、メニューのすべてのアンカーを選択し、それらをループして、それぞれのhref属性の値を現在のページのURLと比較します。それらが等しい場合は、適切なクラスを要素に追加します。