Как убрать полосу загрузки в Google Chrome

Обновлено: 21.11.2024

Объявлено о прекращении поддержки описанных здесь технологий для платформ, отличных от ChromeOS. Подробнее см. в нашем руководстве по миграции.

Существует пять типов событий, на которые разработчики могут реагировать в Native Client: ход выполнения, сообщение, изменение просмотра, фокус и события ввода (каждое из которых описано в глоссарии ниже). В этом разделе описывается, как отслеживать события выполнения (события, происходящие во время загрузки и выполнения модуля собственного клиента). В этом разделе предполагается, что вы знакомы с материалами, представленными в Техническом обзоре.

События загрузки и выполнения модуля

Среда выполнения собственного клиента сообщает о наборе изменений состояния в процессе загрузки модуля с помощью событий выполнения DOM. Этот набор событий является прямым переносом предлагаемого стандарта W3C Progress Events (за исключением события сбоя, которое является расширением стандарта W3C). В следующей таблице перечислены типы событий, о которых сообщает среда выполнения Native Client:

< td>Указывает, что загрузка завершена (независимо от сбоя или нет).

Последовательность событий для успешной загрузки модуля следующая:

СобытиеВремя срабатыванияПри срабатыванииКак вы можете отреагировать
loadstart Native Client начал загружать модуль Native Client. один разПервое событие выполнения после Native Client. Клиентский модуль создан и инициализирован.Отображение сообщения о состоянии, например «Загрузка. ”
progress Часть модуля загружена. ноль или большеПосле отправки loadstart.Отобразить индикатор выполнения.
ошибка Модулю собственного клиента не удалось начать выполнение (включая любую ошибку до или во время инициализации модуля). Атрибут lastError (упомянутый ниже) предоставляет сведения об ошибке (сбой инициализации, sel_ldr не запустился и т. д.). ноль или один разПосле последнего события выполнения. отправлено или после загрузки, если событие прогресса не было отправлено.Сообщить пользователю, что приложение не удалось загрузить.
abort Загрузка модуля NativeClient была прервана пользователем. ноль или один разПосле того, как было отправлено последнее событие прогресса, или после загрузки, если событие прогресса не было отправлено.Маловероятно вы захотите отреагировать на это событие.
load Модуль Native Client успешно загружен, и выполнение запущено. (Модуль был успешно инициализирован.) ноль или один разПосле того, как было отправлено последнее событие progress, или после loadstart, если событие progress не было отправлено.Удалить индикатор выполнения.
loadend Загрузка модуля собственного клиента остановлена. Загрузка выполнена успешно ( load ), не удалось ( error ) или была прервана ( abort ). один разПосле отправки события error , abort или load.
сбой. Модуль собственного клиента не отвечает (умер при выполнении assert() или exit() ) после удачная загрузка. Это событие уникально для Native Client и не является частью стандарта W3C Progress Events. Атрибут exitStatus предоставляет числовой статус выхода. ноль или один разПосле завершения загрузки.Уведомление пользователя о том, что модуль сделал что-то недопустимое.
< tr >
Событие отправлено. затем выполняется попытка выполнить эту задачу
loadstart загрузить файл манифеста
прогресс (первый раз)загрузить модуль
прогресс (последующие разы)
load начать выполнение модуля
loadend

Ошибки, возникающие во время загрузки, регистрируются в консоли JavaScript в Google Chrome (выберите значок меню > Инструменты > Консоль JavaScript).

Обработка событий выполнения

Вы должны добавить прослушиватели событий в

Прослушиватели событий можно добавить к любому объекту DOM. Поскольку прослушиватели, установленные в самой внешней области, захватывают события для содержащихся в них элементов, вы можете настроить прослушиватели на внешних элементах (включая элемент) для обработки событий от внутренних элементов. Дополнительные сведения см. в спецификациях W3 для захвата потока событий и регистрации прослушивателя событий.

Отображение статуса загрузки

Одним из распространенных ответов на события прогресса является отображение процентной доли загруженного модуля. В примере load_progress при запуске события progress вызывается функция moduleLoadProgress. Эта функция использует атрибуты lengthComputable ,loaded и total (описанные в предлагаемом стандарте W3C Progress Events) события для расчета процентной доли загруженного модуля.

Атрибут lastError

Элемент имеет атрибут lastError, которому присваивается информативная строка всякий раз, когда происходит сбой загрузки (ошибка или прерывание).

Следующий код добавляет прослушиватель событий перед элементом для захвата и обработки ошибки при загрузке модуля собственного клиента. Функция handleError() отслеживает событие ошибки. При возникновении ошибки эта функция выводит содержимое атрибута lastError ( embed_element.lastError ) в качестве предупреждения.

Атрибут readyState

Вы можете использовать атрибут readyState для отслеживания процесса загрузки. Этот атрибут особенно полезен, если вам не нужны подробности отдельных событий прогресса или если вы хотите опросить текущее состояние загрузки без регистрации слушателей. Значение readyState изменяется следующим образом для успешной загрузки:

Event readyState value
(перед любыми событиями ) undefined
старт загрузки 1
прогресс 3
загрузить 4
загрузить 4

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

Атрибут exitStatus

Этот атрибут доступен только для чтения, если приложение вызывает exit(n) , abort() или аварийно завершает работу. Поскольку модули NaCl являются обработчиками событий, нет необходимости вызывать exit(n) при обычном выполнении. Если модуль завершает работу или аварийно завершает работу, выдается событие выполнения аварийного завершения, а атрибут exitStatus будет содержать числовое значение статуса выхода:

Google планирует скрыть строку состояния в PWA (прогрессивных веб-приложениях). Мы все знаем, что технологические компании, такие как Google, время от времени работают над улучшением и изменением своих функций. Ранее, совсем недавно он изменил одну из своих функций, которая позволяла удалять PWA Chrome из настроек или панели управления, что раньше было невозможно. Теперь стало известно, что Google планирует скрывать свою строку состояния в PWA или нет, но эта разработка находится в стадии тестирования, и пока не принято никакого решения (чтобы внедрить ее в качестве опции по умолчанию).< /p>

Если вы не знаете, что такое строка состояния в PWA. Не беспокойтесь! Мы снабдили вас этой информацией. Пункт назначения ссылки отображается внизу серым цветом, когда вы просматриваете веб-страницу в веб-браузере. Строка состояния представляет собой горизонтальное поле, которое находится в нижней части экрана и показывает, какая программа запущена и какой веб-сайт запущен, прежде чем щелкнуть ссылку. Это назначение строки состояния, и это очень важно.

Чтобы увидеть, как будет выглядеть эта область строки состояния после удаления, все, что вам нужно сделать, это выполнить следующие действия.

Следует отметить, что под параметром «Удалить строку состояния PWA для настольных ПК» есть описание флага, уведомляющее, что «Скрывает всплывающее окно строки состояния в приложении PWA для настольных ПК Windows, Mac, Windows, Linux и Chrome OS». этим изменением. Это означает, что только упомянутые устройства и операционные системы имеют возможность включения опции удаления строки состояния. Android и iOS будут отображать строку состояния, если Google также не активирует эту опцию.

Мы не можем сказать, довольна ли публика этим изменением или нет, учитывая, что опрос общественного мнения еще не проводился, но мы также не уверены, останется ли это изменение, поскольку оно все еще находится в тестовых условиях. Каким бы ни было принятое решение, мы уверены, что оно будет соответствовать общественному спросу, потому что технический гигант сохраняет свои пользовательские предпочтения в качестве главного приоритета.

Основной обзор того, как создать адаптирующуюся к цвету и доступную полосу загрузки с помощью элемента <progress>.

В этом посте я хочу поделиться мыслями о том, как создать адаптивную по цвету и доступную полосу загрузки с помощью элемента <progress>. Попробуйте демо и просмотрите исходный код! Светлое и темное, неопределенное, увеличивающееся и завершающее, демонстрируемое в Chrome.

Если вы предпочитаете видео, вот версия этого сообщения на YouTube:

Элемент <progress> обеспечивает визуальное и звуковое оповещение пользователей о завершении. Эта визуальная обратная связь полезна для таких сценариев, как: продвижение по форме, отображение информации о загрузке или выгрузке или даже отображение того, что объем выполнения неизвестен, но работа все еще активна.

В этом испытании с графическим интерфейсом использовался существующий элемент HTML <progress>, чтобы сэкономить усилия на доступности. Цвета и макеты расширяют границы индивидуальной настройки встроенного элемента, чтобы модернизировать компонент и сделать его более подходящим для систем дизайна. Демонстрация показана в Firefox, Safari, iOS Safari, Chrome и Android Chrome в светлой и темной схемах.

Я решил обернуть элемент <progress> в <label>, чтобы можно было пропустить явные атрибуты связи в пользу неявной связи. Я также пометил родительский элемент, на который влияет состояние загрузки, чтобы технологии чтения с экрана могли передать эту информацию обратно пользователю.

Если значение отсутствует, то ход выполнения элемента не определен. Атрибут max по умолчанию равен 1, поэтому прогресс находится в диапазоне от 0 до 1. Например, установка max на 100 установит диапазон от 0 до 100. Я решил остаться в пределах 0 и 1, переведя значения прогресса в 0,5 или 50%.

В неявной связи элемент прогресса заключен в метку следующим образом:

В своей демонстрации я решил включить метку только для программ чтения с экрана. Это делается путем заключения текста метки в <span> и применения к нему некоторых стилей, чтобы он эффективно находился за пределами экрана:

Со следующим сопровождающим CSS от WebAIM:

Если у вас здоровое зрение, может быть легко связать индикатор выполнения с соответствующими элементами и областями страницы, но для слабовидящих пользователей это не так очевидно. Улучшите это, назначив атрибут aria-busy самому верхнему элементу, который изменится после завершения загрузки. Кроме того, укажите связь между прогрессом и зоной загрузки с помощью aria-describedby .

В JavaScript переключите aria-busy на true в начале задачи и на false после ее завершения.

Хотя неявной ролью элемента <progress> является progressbar , я сделал ее явной для браузеров, в которых эта неявная роль отсутствует. Я также добавил неопределенный атрибут, чтобы явно перевести элемент в состояние неизвестного, что понятнее, чем наблюдать, что элемент не имеет установленного значения.

Используйте tabindex="-1", чтобы сделать элемент прогресса доступным для фокуса из JavaScript. Это важно для технологии чтения с экрана, так как выделение прогресса по мере изменения прогресса сообщит пользователю, как далеко продвинулся обновленный прогресс.

Элемент прогресса немного сложен, когда дело доходит до стиля. Встроенные HTML-элементы имеют специальные скрытые части, которые бывает сложно выбрать, и часто они предлагают лишь ограниченный набор свойств для установки.

Стили макета предназначены для обеспечения некоторой гибкости в отношении размера элемента прогресса и положения метки. Добавлено особое состояние завершения, которое может быть полезной, но не обязательной дополнительной визуальной подсказкой.

Ширина элемента прогресса остается неизменной, поэтому он может уменьшаться и увеличиваться в соответствии с пространством, необходимым для дизайна. Встроенные стили удаляются, если для параметра «Внешний вид» и «Граница» установлено значение none. Это делается для того, чтобы элемент можно было нормализовать в разных браузерах, поскольку у каждого браузера есть свои стили для своего элемента.

Значение 1e3px для _radius использует научное числовое обозначение для выражения большого числа, поэтому радиус границы всегда округляется. Это эквивалентно 1000px. Мне нравится использовать это, потому что моя цель — использовать значение, достаточно большое, чтобы я мог установить его и забыть (и это короче, чем 1000px). При необходимости его также легко сделать еще больше: просто измените 3 на 4, тогда 1e4px эквивалентно 10000px .

overflow: hidden используется и является спорным стилем. Это упростило несколько вещей, таких как отсутствие необходимости передавать значения радиуса границы на дорожку и элементы заполнения дорожки; но это также означало, что дети прогресса не могли жить вне стихии. Другая итерация этого пользовательского элемента прогресса может быть выполнена без переполнения: скрыто, и это может открыть некоторые возможности для анимации или улучшения состояний завершения.

Селекторы CSS выполняют здесь тяжелую работу, сравнивая максимальное значение со значением, и если они совпадают, процесс завершен.По завершении создается псевдоэлемент, который добавляется в конец элемента прогресса, обеспечивая хороший дополнительный визуальный сигнал завершения.

Эти селекторы работают, только если max не установлен или равен 100 . Селекторы необходимо будет обновить, если ваш элемент прогресса имеет другой максимум.

Браузер использует собственные цвета для элемента прогресса и адаптируется к свету и темноте с помощью всего одного свойства CSS. Это можно реализовать с помощью некоторых специальных селекторов для конкретных браузеров.

Чтобы выбрать для своего сайта адаптивный темный и светлый элемент <progress>, цветовая схема — это все, что требуется.

Чтобы подкрасить элемент <progress>, используйте акцент-цвет .

Обратите внимание, что цвет фона дорожки меняется со светлого на темный в зависимости от акцентного цвета. Браузер обеспечивает правильный контраст: довольно аккуратно.

Установите два настраиваемых свойства для элемента <progress>: одно для цвета дорожки, а другое — для цвета хода выполнения. Внутри медиа-запроса preferences-color-scheme укажите новые значения цвета для отслеживания и отслеживания прогресса.

Необходимо обратить внимание на контраст между цветами трека и прогресса.

Ранее мы давали элементу отрицательный индекс табуляции, чтобы он мог быть программно сфокусирован. Используйте :focus-visible, чтобы настроить фокус, чтобы выбрать более умный стиль кольца фокусировки. При этом щелчок мышью и фокусировка не будут показывать кольцо фокусировки, но щелчки клавиатуры будут. В видео на YouTube это рассматривается более подробно, и его стоит просмотреть.

  1. Нажмите правой кнопкой мыши на своей странице и выберите "Проверить элемент", чтобы открыть DevTools.
  2. Нажмите на шестеренку настроек в правом верхнем углу окна DevTools.
  3. Под заголовком "Элементы" найдите и установите флажок "Показать тень DOM пользовательского агента".
Псевдоселекторы

-moz- и -webkit- не могут быть сгруппированы, так как один или другой не сработает и сделает группу селекторов недействительной. Более того, несмотря на то, что :is() и :where() допускают использование списков селекторов, они не принимают эти псевдоселекторы и также не работают.

Браузеры на основе WebKit, такие как Safari и Chromium, предоставляют ::-webkit-progress-bar и ::-webkit-progress-value , которые позволяют использовать подмножество CSS. А пока задайте background-color с помощью созданных ранее пользовательских свойств, которые адаптируются к свету и темноте.

Firefox предоставляет псевдоселектор ::-moz-progress-bar только для элемента <progress>. Это также означает, что мы не можем окрашивать гусеницу напрямую.

Для Firefox цветовая схема окрашивает дорожку <progress>. Пользовательские цвета не могут быть предоставлены в color-scheme , но я обнаружил, что это можно использовать для предоставления адаптивной панели загрузки.

Обратите внимание, что Firefox имеет цвет дорожки, заданный цветом акцента, а iOS Safari имеет светло-голубую дорожку. То же самое и в темном режиме: в Firefox есть темная дорожка, но не установленный нами пользовательский цвет, и он работает в браузерах на основе Webkit.

При работе со встроенными псевдоселекторами браузера часто используется ограниченный набор разрешенных свойств CSS.

Добавление перехода к встроенному размеру элемента прогресса работает для Chromium, но не для Safari. Firefox также не использует свойство перехода на панели ::-moz-progress-bar .

Здесь я проявляю немного больше творчества, поэтому я могу добавить анимацию. Создается псевдоэлемент для Chromium и применяется градиент, который анимируется вперед и назад для всех трех браузеров.

Пользовательские свойства отлично подходят для многих вещей, но одним из моих любимых является просто присвоение имени волшебно выглядящему значению CSS. Ниже приведен довольно сложный linear-gradient, но с красивым названием. Его назначение и варианты использования понятны.

Пользовательские свойства также помогут коду оставаться СУХИМ, поскольку мы снова не можем сгруппировать эти селекторы для конкретных браузеров вместе.

Цель – бесконечная анимация, которая движется вперед и назад. Начальный и конечный ключевые кадры будут установлены в CSS. Требуется только один ключевой кадр, средний ключевой кадр на 50% , чтобы создать анимацию, которая снова и снова возвращается к исходному состоянию!

Не каждый браузер позволяет создавать псевдоэлементы в самом элементе <progress> или позволяет анимировать индикатор выполнения. Больше браузеров поддерживают анимацию дорожки, чем псевдоэлемента, поэтому я перешел с псевдоэлементов в качестве основы на анимацию тактов.

Chromium позволяет использовать псевдоэлемент: ::after с позицией для покрытия элемента. Используются неопределенные пользовательские свойства, а анимация вперед и назад работает очень хорошо.

Для Safari настраиваемые свойства и анимация применяются к индикатору выполнения псевдоэлемента:

Для Firefox пользовательские свойства и анимация также применяются к индикатору выполнения псевдоэлемента:

JavaScript играет важную роль в элементе <progress>. Он контролирует значение, отправляемое элементу, и обеспечивает наличие в документе достаточного количества информации для программ чтения с экрана.

В демоверсии есть кнопки для управления ходом выполнения; они обновляют state.val, а затем вызывают функцию для обновления DOM.

В этой функции происходит согласование UI/UX. Начните с создания функции setProgress(). Никаких параметров не требуется, поскольку он имеет доступ к объекту состояния, элементу выполнения и зоне <main>.

В зависимости от того, завершен процесс или нет, соответствующий элемент <main> требует обновления атрибута aria-busy:

Если значение неизвестно или не задано, используйте null в этом случае, удалите атрибуты value и aria-valuenow. Это сделает <progress> неопределенным.

Поскольку я решил придерживаться максимального прогресса по умолчанию, равного 1, демонстрационные функции увеличения и уменьшения используют десятичную математику. JavaScript и другие языки не всегда хороши в этом. Вот функция roundDecimals(), которая удалит лишнее из математического результата:

Округлите значение, чтобы оно могло быть представлено и было разборчивым:

  1. Атрибут значения элемента <progress>.
  2. Атрибут aria-valuenow.
  3. Внутреннее текстовое содержимое <progress>.

После обновления значений зрячие пользователи увидят изменение хода выполнения, но пользователи программ чтения с экрана еще не увидят объявление об изменении. Сфокусируйте элемент <progress>, и браузер объявит об обновлении!

Теперь, когда вы знаете, как я это сделал, как бы вы‽ 🙂

Конечно, есть несколько изменений, которые я хотел бы внести, если бы у меня был еще шанс. Я думаю, что есть место, чтобы очистить текущий компонент, и есть место, чтобы попытаться создать его без ограничений стиля псевдокласса элемента <progress>. Это стоит изучить!

Давайте разнообразим наши подходы и изучим все способы создания сайтов в Интернете.

Создайте демо, пришлите мне ссылки в твиттере, и я добавлю его в раздел ремиксов сообщества ниже!

Когда вы приостанавливаете воспроизведение видео на YouTube, вы можете видеть, что панель обработки видео YouTube всегда будет на месте. По какой-то причине вы можете захотеть удалить его. Вы знаете, как скрыть панель YouTube? В этом посте MiniTool uTube Downloader покажет вам два метода: с расширением или без расширения.

Элементы управления YouTube или панель YouTube – это панель в нижней части видеопроигрывателя YouTube. Вы можете использовать его для управления воспроизводимым видео на YouTube. Например, вы можете использовать его для управления процессом воспроизведения видео, включения или отключения автовоспроизведения, отображения или скрытия субтитров, переключения качества видео и многого другого.

Когда вы смотрите видео на YouTube, панель YouTube автоматически исчезает, если вы перемещаете курсор за пределы видеопроигрывателя YouTube. Если вы смотрите видео на YouTube в полноэкранном режиме, панель YouTube может автоматически исчезнуть через несколько секунд. Однако, когда вы ставите видео на паузу, панель YouTube висит там навсегда.

По какой-то причине вам может понадобиться скрыть панель YouTube во время паузы, но вы не знаете, как это сделать. Не беспокойтесь. В этом посте мы покажем вам два способа заставить YouTube скрыть индикатор выполнения во время паузы.

Как скрыть панель YouTube во время паузы?

  1. Скрыть панель YouTube с помощью расширения
  2. Скрыть панель YouTube без расширения

Способ 1. Как скрыть панель YouTube с помощью расширения

Вы можете скрыть панель YouTube, добавив расширение в веб-браузер. Это легкий выбор. Вы можете попробовать hyde — скрыть элементы управления видеопроигрывателем YouTube.

Вот как скрыть элементы управления YouTube при приостановке с помощью этого расширения:

<р>1. Откройте Chrome и используйте его для поиска скрытия элементов управления видеопроигрывателем YouTube.

<р>2. Выберите первый результат поиска (не рекламу), чтобы открыть страницу расширения. Затем нажмите кнопку "Добавить в Chrome", чтобы продолжить.

<р>3. Нажмите кнопку «Добавить расширение», чтобы добавить расширение в Chrome. Расширение будет быстро добавлено в Google Chrome.

<р>4. Откройте видео YouTube, которое хотите посмотреть, и нажмите Ctrl+M. Это сочетание клавиш может заставить YouTube скрыть панель процесса, даже если вы не приостановили воспроизведение видео на YouTube.

<р>5. После того, как панель YouTube/элементы управления YouTube будут скрыты во время паузы, вы можете сделать снимок экрана текущего кадра или выполнить другие действия, которые вы хотите сделать. После этого, если вы хотите увидеть панель YouTube, вы можете нажать Ctrl+M.

Способ 2. Как скрыть панель YouTube без расширения

Если вы не хотите устанавливать расширение в Chrome, чтобы скрыть панель YouTube, вы можете попробовать этот метод: с помощью скрипта. Вот что вам нужно сделать:

<р>1. Откройте новую вкладку в Chrome.

<р>2. Щелкните правой кнопкой мыши пространство «Закладки» и выберите «Добавить страницу…».

<р>3. Назовите новую вкладку, например, скрыть панель YouTube или как-нибудь еще.

<р>4. Скопируйте следующее в поле рядом с URL:

<р>5. Нажмите кнопку Сохранить.

<р>6. Теперь вы можете увидеть параметр скрытия панели YouTube на панели закладок Chrome.

<р>7. Откройте видео YouTube, которое вы хотите воспроизвести. Затем нажмите скрыть панель YouTube в закладках. Независимо от того, приостановлено видео на YouTube или нет, панель YouTube немедленно исчезнет.

<р>8. Если вы хотите снова увидеть панель YouTube, вы можете просто обновить страницу. Однако, если страница не обновляется, панель YouTube всегда будет скрыта, даже если медиаплеер YouTube автоматически воспроизводит следующее видео.

Как управлять видео на YouTube без панели YouTube?

Если вы решите скрыть панель YouTube, управлять видео на YouTube будет непросто. Для управления видео необходимо использовать клавишу или сочетания клавиш. Вот таблица с некоторыми полезными сочетаниями клавиш:

Читайте также: