2015-10-14 1 views
0

с помощью JQuery, я хочу, чтобы добавить класс <header> тег только если на index.phpДобавить класс заголовка, если страница index.php с помощью JQuery

Псевдо код:

var page_name = get current page name 
if 
    $page_name == 'index.php' 
then 
    add 'is_index' class to <header> 
else 
    do nothing 

Я хотел для стиля заголовка по-разному только на индексной странице, поэтому я пытаюсь вставить селектор, чтобы захватить CSS. Я могу добиться в PHP, но я не могу найти, какую функцию jQuery использовать. Мне нужно использовать jQuery, поскольку <header> может уже иметь класс, и я не верю, что PHP может добавить элемент, у которого уже есть класс (но, возможно, я ошибаюсь).

ответ

2

Простой

$('header').toggleClass('is_index', /\/index.php$/.test(location.pathname)) 

Примечание: Это будет переключать класс на все<header> элементы, если у вас есть больше чем один.

Документах для toggleClass() здесь ~ http://api.jquery.com/toggleclass/#toggleClass-className-state


Кроме того, не должно быть никаких проблем делать это в PHP

<?php $isIndex = basename(__FILE__) == 'index.php'; 
    // or however you determine you're on index.php 
?> 
<header class="whatever <?= $isIndex ? 'is_index' : '' ?>">