Как Скрыть ОТДЕЛЕНИЯ, они Показывают в течение Доли секунды на странице Load

Другой в JavaScript:

(function() { arguments.callee() })()
5
задан Paul Roub 12 May 2019 в 19:57
поделиться

5 ответов

Отключение в CSS - это нормально, но тогда пользователи без JS никогда не увидят их.

Чтобы отключить только для пользователей с JS, отметьте тело и соответствующий CSS:

<body>
  <script type="text/javascript">
    document.body.className += " js";
  </script>

CSS:

.js #gall2, .js #gall3, .js #gall4 { display: none; }
15
ответ дан 18 December 2019 в 08:28
поделиться

В качестве альтернативы ответу orip вы можете сделать следующее, если вам не нравится добавлять скрипты в :

<html>
<head>
  <script src="jquery.js"></script>
  <script>
    $('html').addClass('js');
    $(function() {
      // do DOM ready stuff
    });
  </script>
  <style>
  .js #gall2, .js #gall3, .js #gall4 { display: none; }
  </style>
</head>

Вы избежите мерцания этого так как вы добавляете имя класса в HTML перед DOM готов.

2
ответ дан 18 December 2019 в 08:28
поделиться

Да, это, безусловно, допустимо сделать в вашем CSS

Другие респонденты правы. Делать вещи видимыми только с помощью JS - не лучшая практика. Думаю, я просто думал технически: изменение CSS таким образом решит проблему.

2
ответ дан 18 December 2019 в 08:28
поделиться

Всегда пытайтесь представить, что увидят пользователи, у которых отключен JS. Если вы используете решение CSS, для них не будут отображаться не первые DIV, но если вы измените слайды программно, они, очевидно, будут видеть только первый. Лучше всего дать им вариант «Нет JS». Затем, если вы можете быть уверены, что у пользователя включен JS, вы можете скрыть блоки div с помощью CSS и показать их с помощью JS.

0
ответ дан 18 December 2019 в 08:28
поделиться

Они отображаются, потому что по умолчанию блоки div, вероятно, будут отображаться. Поскольку запуск события «ready» на странице может занять несколько секунд, вызовы метода .hide () не сработают, пока все на странице не будет загружено и готово.

Если я правильно помню, то. Метод hide () просто установит атрибут «display» элемента в «none». Таким образом, по умолчанию настройка div на скрытие через CSS позволяет всегда скрывать их, и вы получаете дополнительный бонус в виде того, что пользователи JS не видят их.

0
ответ дан 18 December 2019 в 08:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: