Я не пробовал этого, но, возможно, вы могли бы заключить содержимое в теги <noscript>
. Те, у кого отключен Javascript, всегда будут видеть контент. Те, у кого есть Javascript, не увидят контент. Затем используйте JQuery для удаления тегов <noscript>
, что делает содержимое видимым для тех, кто использует Javascript.
EDIT:
Следующий пример почти работает. Я намеревался удалить теги <noscript>
, сохранив их содержимое. Однако код в конечном итоге экранирует HTML. Идея работает, но я не уверен, как правильно ее реализовать - возможно, кто-то еще может пролить свет на это:
<noscript>
<p>Display me!</p>
</noscript>
<script type="text/javascript" language="javascript">
$(document).ready(function() {
$('noscript').contents().unwrap();
});
</script>
Вот что я хотел получить:
<p>Display me!</p>
Вот что я на самом деле получаю:
<p>Display me!</p>
РЕДАКТИРОВАТЬ 2:
После небольшого исследования метод unwrap()
работает правильно для не <noscript>
тегов: он работает, например, для содержимого <div>
. Я не уверен, что решение здесь. Вероятно, это связано с тем, как браузеры интерпретируют <noscript>
.