$ ( 'Элемент') шоу ().vs $ ('element'). css ('visibility', 'visible'): что лучше использовать? - PullRequest
0 голосов
/ 06 октября 2018

Существует два способа показать / скрыть элемент.Сначала $('element').show(), где show() - функция в Jquery, и $('element').css('visibility', 'visible'), где css() также происходит из Jquery.Что быстрее и что использовать?Я думаю, что первый быстрее.

Ответы [ 3 ]

0 голосов
/ 06 октября 2018

Как указано в комментариях, оба .css() и .show() являются частью jQuery, основное различие между ними заключается в том, что первый присваивает определенное значение свойству css visibility, а другой восстанавливает исходное * 1004.* значение элемента (например, блок или встроенный блок)

0 голосов
/ 06 октября 2018



В видимости и скрытии / показе стиль будет добавлен как встроенный

Видимость
.css('visibility', 'visible');, тольковидимость будет скрыта.Но на дисплее не будет ни одного.



Скрыть / показать
Это очень просто и эквивалентно .css("display", "block");



Какой из них быстрее?
Я думаю, что обычно он не используется для такого рода функций, но он используется для взаимодействий, функций всобытия и т.д ...

0 голосов
/ 06 октября 2018

.show() примерно эквивалентно вызову .css ("display", "block"), за исключением того, что свойство display восстанавливается до того, что было изначально.Если элемент имеет отображаемое значение inline, то он скрыт и показан, он снова будет отображаться inline.

http://api.jquery.com/show/

Настройка .css('visibility', 'visible') покажет толькоэлемент, если он был ранее скрыт с помощью visibility: hidden.show() изменяет свойство display.Основное различие между этими двумя методами заключается в их поведении макета (элементы visibility:hidden по-прежнему занимают место в макете, элементы display:none - нет).

Что касается скорости / производительности: в случае сомнений, запустите тест .Вопреки вашему предположению, jQuery видимость значительно быстрее, чем показать / скрыть.В vanilla JS эта разница испаряется, по крайней мере, для простых макетов документов;оба метода имеют примерно одинаковую скорость (и оба на намного быстрее, чем любой из методов jQuery).Мои результаты по связанному тесту:

  • jQuery показать / скрыть x 20,913 операций / сек ± 2,49% (75 прогонов выборки)
  • jQuery видимость x 121,719 операций / сек ± 1,46% (81 пробная выборка)
  • ванильное шоу / скрыть x 453 574 операций / сек ± 2,51% (85 проб выборки)
  • видимость ванили x 450 610 операций / сек ± 1,98% (89 проб выборки)

Трудно представить какую-либо правдоподобную ситуацию, в которой эта разница в производительности была бы значительной;разница в компоновке, как правило, была бы реальным решающим фактором здесь ... но если вашему приложению нужно показывать и скрывать десятки тысяч элементов в секунду, вы должны выполнить сравнительный анализ с вашим реальным кодом и выяснить, есть ли конкретные сведения о вашемреализация, которая сделает один или другой предпочтительным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...