Разбираемся с rel external
Seditio.by » Наш блог » jQuery и JavaScript » Разбираемся с rel external

Часто при просмотре блогов мы видим ссылки вида:
<a rel="external nofollow" href="http://seditio.by/page.php?al=cotonti">
CMF Cotonti
</a>Если с атрибутом nofollow все понятно, то external часто вызывает недоумение и вопросы.
Все дело в том, что спецификация XHTML не поддерживает атрибут ссылки target. Поскольку открытие нового окна в браузере — это задача сценария, а не языка гипертекстовой разметки, конструкции вида
target="_blank"более не являются валидными.
Итак, "искусственный" атрибут
rel="external"служит только и исключительно для того, чтобы, обрабатывая его скриптом, назначать таким ссылкам класс и открывать их в новом окне браузера. Интересно, что в огромном количестве блогов этот атрибут заботливо проставлен во всех внешних линках, но скрипты их не обрабатывают. Очевидно потому, что удачные решения отсутствуют. Посему, публикуем свое:
function externalLinks() {
if (!document.getElementsByTagName) return;
var anchors = document.getElementsByTagName("a");
for (var i=0; i<anchors.length; i++) {
var anchor = anchors[i];
if (anchor.getAttribute("href") && anchor.getAttribute("rel") == "external") {
anchor.target = "_blank";
anchor.className = "external";
anchor.title = "Opens in new window"
}
}
}
window.onload = externalLinks;Комментарии
Просто и доступно! Спасибо!
Век живи, век учись. Спасибо за разъяснение rel="external" и скрипт для его обработки. Возьму на вооружение.
Это замечательно!
Сначала объявить что-либо "невалидным", а потом всем миром изобретать велосипеды "что же нам теперь всем с этим делать".
Да уж, во истину "лучший валидатор - это браузер"
У меня вопрос, куда устанавливать данный скрипт на uCoz'e ?
Всего : 4, на странице: 4
Похожие страницы
Нет записей
Теги
Нет тегов
