Альтернатива target = _blank при использовании строгого XHTML и без javascript!

Мне нужно использовать строгий XHTML

Мне нужно убедиться, что мой сайт работает без javascript.

Мне нужно открыть новое окно справки из моего собственного приложения. Конечно, я хотел использовать target = "_ blank", когда javascript не обнаружен, но это не строго XHTML.

Есть ли альтернативы?


person AJM    schedule 31.07.2009    source источник
comment
Целевой атрибут не является строгим xhtml или значением _blank?   -  person David Christiansen    schedule 31.07.2009
comment
Нет, целевой атрибут не разрешен в XHTML Strict.   -  person Sampson    schedule 31.07.2009
comment
Почему бы вам не предложить помощь в том же окне? А ссылка на предыдущую страницу? Я знаю, что это может быть утомительно, если вы хотите иметь возможность манипулировать страницей и получать помощь в стороне (но почему бы просто не добавить помощь в стороне?).   -  person H_I    schedule 31.07.2009
comment
@Philippe: По крайней мере, не без риска попасть в тюрьму!   -  person Brian    schedule 31.07.2009


Ответы (5)


В этом случае вам необходимо использовать javascript. Если вы не хотите использовать javascript и по-прежнему имеете действующую разметку, не используйте XHTML Strict в качестве своего типа документа.

document.getElementById("mylink").target = "_blank";

Или вы можете прикрепить событие клика к ссылке, которая открывает адрес в новом окне. В любом случае, javascript - ваше решение, если вам нужна правильная разметка.

person Sampson    schedule 31.07.2009
comment
без использования javascript и по-прежнему XHTML Strict? - person Tommy; 31.07.2009
comment
Заголовок был вопрос. Это невозможно без javascript. - person Sampson; 31.07.2009
comment
Да, его клиент гонит, и у меня связаны руки! - person AJM; 31.07.2009
comment
@AJM, вы можете использовать XHTML Strict + Javascript или менее строгий doctype без javascript. - person Sampson; 31.07.2009
comment
Я так и думал, я уже занимаюсь javascript. Это унизительно. - person AJM; 31.07.2009
comment
@AJM, дайте знать вашему клиенту, что это стандарт в профессиональном мире. Им не о чем беспокоиться. - person Sampson; 31.07.2009

Вы можете сделать это только:

  • Использовать переходный тип документа
  • или используйте JavaScript

Не навязывайте посетителям новые окна

person Tommy    schedule 31.07.2009
comment
Мне нужно использовать XHTML strict. Мне нужно, чтобы мой сайт работал без javascript. - person AJM; 31.07.2009
comment
@AJM: а как именно это не работает, если вы не можете принудительно открыть новое окно? Что плохого в том, чтобы позволить пользователю решать, какие ссылки открывать в новом окне? - person Joachim Sauer; 31.07.2009
comment
Кто эти монстры, запрещающие использовать Javascript! - person Brian; 31.07.2009
comment
Многие менеджеры проектов и продавцы не хотят, чтобы посетитель покидал их страницу. Я все время это слышу. - person Tommy; 31.07.2009

Это простой способ:

<a href="link" onclick="target='_blank'">link</a>
person Borut Tomazin    schedule 11.03.2012

На самом деле, может быть способ сделать это без javascript. Вы можете написать собственное DTD, как описано здесь.

Добавьте целевой атрибут в свою настройку, и он будет подтвержден. Мне только что пришла в голову эта идея, и я не уверен, что упускаю какие-то недостатки.

person gmdavisUX    schedule 12.08.2009

Попробуйте использовать это:

http://www.webaddress.com' target='_blank'

как адрес.

person IT Ctrl    schedule 08.12.2009
comment
Вопрос АЛЬТЕРНАТИВНО target = '_ blank' - person AJM; 09.12.2009