2010-09-08 6 views
4

У меня довольно стандартная навигация для сайта. Основная навигация - это ul, с несколькими вложенными ul. Я просто хочу просто отключить ссылку, когда пользователь уже на этой странице.Отключить ссылку на текущую страницу в навигации

Так что, если я на главной странице, ссылка на главную страницу должна быть отключена. Если я на странице контактов, ссылка на страницу контактов должна быть отключена.

Я не хочу полностью удалять ссылку, просто удалите href из привязки или просто сделайте сам анкер деактивированным. Есть ли быстрое, гладкое и элегантное решение для этого в XHTML, CSS, JavaScript или php. Я также хотел бы, чтобы решение было дружелюбным по всем направлениям, а не только для современных браузеров (вы можете прочитать, IE 6).

Я думал об установке переменной пути на каждой странице, а затем с выражением if для каждой ссылки, но это кажется ужасно утомительным и глупым. Но, эй, это выполнит свою работу.

+0

Я бы сказал, что речь идет о стандарте: пусть код, генерирующий вашу навигацию, проверяет, какая страница является текущей, и отключает ссылку на эту страницу/опускает тэг привязки. Как вы хотите проверить, что это ваша забота, вы даже можете в основном проверить '$ _SERVER ['REQUEST_URI']' и полученный URL-адрес и опустить тег, если они совпадают. – Wrikken

+0

Вещь, я не динамически генерирую навигацию, поэтому, я думаю, мне нужно было бы сделать утверждение if по каждой ссылке, а затем использовать ваше предложение $ _SERVER ['REQUEST_URI'] с алгоритмом, чтобы понять это правильно. –

ответ

3

Я думаю, что было бы лучше сделать это в коде генерации страницы (т.е. PHP), перебирая каждую ссылку и удаление <a> тега, заменив его <span> или что-то подобное, если ссылка соответствует критериям для согласования текущая страница. PHP дает вам эту текущую страницу (в различных вариантах: $_SERVER['REQUEST_URI'], $_SERVER['SCRIPT_FILENAME'], $_SERVER['PHP_SELF'], $_SERVER['QUERY_STRING'] и т. Д.) В ее базе, и используя их, вы можете определить алгоритм, соответствующий вашей странице.

+0

Вещь, я не динамически генерирую навигацию, поэтому, я думаю, мне нужно было бы сделать утверждение if по каждой ссылке, а затем использовать ваше предложение $ _SERVER ['REQUEST_URI'] с алгоритмом, чтобы понять это правильно. –