Подтвердить что ты не робот

Как показать другой контент, когда JavaScript отключен?

Мне нужно показать ПОЛНОСТЬЮ другой контент, когда JavaScript отключен. Я знаю, что могу использовать тег <noscript>... но как я могу скрыть остальную часть страницы, когда JavaScript отключен?

Спасибо.

4b9b3361

Ответ 1

вот еще одно решение:

внутри вашей головы ниже вашей обычной таблицы стилей:

<link rel="stylesheet" href="jsdisabled.css" />
<script type="text/javascript">
    document.write('<link rel="stylesheet" href="jsenabled.css" />');
</script>

что jsenabled.css будет иметь:

#content { display:block; }

в то время как jsdisabled.css будет иметь:

#content { display:none; }

, хотя в приведенном ниже решении он не проверяет

внутри вашего тега noscript вы можете поместить некоторый тег стиля, который скрывает остальную часть вашего контента.

т

<noscript>
    <style type="text/css">
        #content { display:none; }
    </style>
    no js content goes here.
</noscript>

<div id="content">
    content here.
</div>

Мне нравится использовать этот метод, потому что он не делает страницу flash, когда включен javascript.

Ответ 2

Я бы не использовал noscript для отображения альтернативного контента. Для одного в теге <noscript> допустимо только ограниченное число тегов, а <style> не является одним из них. Вместо этого используйте другой подход. Укажите свой контент, когда javascript отключен, видимый по умолчанию, и покажите альтернативный контент, когда включен JavaScript. Лучший способ сделать это - простой CSS и одна строка JS. Если вы сделаете это, как я покажу здесь, не должно быть неудобной вспышки содержимого:

  <head>
     ...
     <script type="text/javascript"> document.documentElement.className += " js"</script>
     <link type="text/css" href="css/style.css" media="all" rel="stylesheet" />
  </head>
  <body>
     <div id="header" class="no_js">header</div>
     <div id="alt_header" class="js">header</div>

     .. etc ..
     <div id="super_duper" class="js">Whatever</div>
  </body>

Просто примените js ко всему, что должно показать, когда включен JavaScript, и no_js ко всему остальному. Затем в CSS добавьте следующее:

html.js .no_js, html .js { display: none }
html.js .js { display: block }

Ответ 3

Используйте метатеги для перенаправления на другую страницу.

<noscript> <meta http-equiv="refresh" content="2; URL=enable_javascript.php"> </noscript>

Ответ 4

Вы можете использовать Javascript для перехода на другую страницу, содержащую Javascript.

Например:

<script type="text/javascript">
    location = "JSEnabled.html";
</script>

Non-javascript content goes here

Ответ 5

Установите тег div с идентификатором содержимого. Добавьте контент, который вы хотите отобразить, когда javascript отключен. Используйте jquery $("#content ").load("content.html") для загрузки содержимого, если включен javascript.

Ответ 6

Все выше сказанное прекрасно, я верю. Просто альтернатива, вы можете попробовать это,

<head>
<script type="text/javascript">
//if javascript enabled
window.onload=function(){
 document.getElementById('jsContentWrapper').style.display='block';
}
</script>
</head>
<body>
<div id='jsContentWrapper' style='display:none;'>
 ---
 --
 -
</div>
<noscript>
   Place your javascript disabled content here
</noscript>
</body>

Спасибо.