2015-09-04 3 views
1

[Обновить код снова] У меня есть следующий код:JQuery - добавить класс на основе URL и без URL

var header_url = window.location.href; 
if(/index/.test(header_url)||/home/.test(header_url)){ 
    $('#home').addClass('select'); 
} else if(/about/.test(header_url)) { 
    $('#about').addClass('select'); 
} else if(/contact/.test(header_url)) { 
    $('#contact').addClass('select'); 
} 

Код работы, когда я нажимаю их:

http://example.com/index.html 
http://example.com/about.html 
http://example.com/contact.html 

Но если я хочу добавить другую страницу, установите ее как главную страницу по умолчанию без URL-адреса, например:

http://example.com 

Я пытаюсь добавить код, но он не работает:

else if(/.test(header_url)) { 
     $('#default').addClass('select'); 
    }  

Помогите пожалуйста? спасибо!

+1

Используйте 'default' случай' switch' – Tushar

+0

@Tushar Извините, что я отправил неверный код, пожалуйста, вы можете проверить еще раз? –

+0

Затем добавьте 'else' в конец и используйте его для случая' default' – Tushar

ответ

0

Вы не создали правильное выражение для последнего условия. Попробуйте ниже код

var header_url = 'http://example.com'; 
//var header_url = 'http://example.com/index.html'; 
//var header_url = 'http://example.com/about.html'; 
//var header_url = 'http://example.com/contact.html'; 
if(/index/.test(header_url)||/home/.test(header_url)){ 
    console.log('index'); 
} else if(/about/.test(header_url)) { 
    console.log('about'); 
} else if(/contact/.test(header_url)) { 
    console.log('contact'); 
} else if(/\//.test(header_url)) { 
    console.log('nothing'); 
} 

Проверить эту скрипку слишком http://jsfiddle.net/anandgh/k63f3a33/1/

1

вы использовали по умолчанию в случае переключения, как

switch (window.location.pathname) { 
case '/index': 
$('#home').addClass('select'); 
break; 
case '/about': 
$('#about').addClass('select'); 
break; 
case '/contact': 
$('#contact').addClass('select'); 
break; 
default: 
$('#default').addClass('select'); 
break; 
} 

попробовать это.

+0

Извините, что я отправил неправильный код, не могли бы вы еще раз проверить? спасибо! –

Смежные вопросы