Содержание
Новые вопросы с меткой [tabs]
Новые вопросы с меткой [tabs] — Stack Overflow на русском
Руководство по использованию метки tabs отсутствует.
JS / VueJS динамические табы с объектами
Доброго времени суток.
Мне необходимо реализовать табы на чистом JS, либо на VueJS (желательно всё же на чистом) которые находятся на фронтенде изначально без единого «таба».
В чем …
задан 13 сен в 3:35
ZerxaFun aKa Zerxa
28311 серебряный знак1414 бронзовых знаков
Навигация табов в слайдере Swiper
Доброго времени суток.
Суть вопроса: пытаюсь сверстать блок, где есть слайдер с небольшими изображениями, которые должны являться навигацией табов, т.е. при нажатии на слайд должен открываться …
задан 7 авг в 16:15
Переключение между Табами (вкладками) HTML/JS
Имеются вкладки для переключения контента. Вкладки обёрнуты ссылками.
Через JS происходит переключение вкладок.
Проблема в том, что при клике на пустое место во вкладки — переключение срабатывает, а …
задан 7 авг в 11:56
sprigan
111 бронзовый знак
Tabs в карточке товаров на сайте WordPress
Есть сайт на WordPress с модулем интернет-магазина WooCommerce и на нем шаблон WoodMart.
Сейчас отображается так (скрин во вложении)
Нужно поменять tab местами: Описание, Характеристики, Доставка и …
задан 29 июл в 9:44
Как изменить цвет заголовка вкладки MDTabs
Как я могу изменить цвет названия вкладки виджета tabs в kivymd? Например:
MDTabs:
id: tabs
text_color_normal: 0, 1, 0, 1
text_color_active: 1, 0, 0, 1
Но это не работает, цвет остается …
задан 15 фев в 13:34
Mi Dem
144 бронзовых знака
Вариант tabs с привязыванем по id
Подскажите вариант для tabs с привязкой контента для кнопки, по клику по которой он вызывается с персонализированным id.
Я использую в данный момент следующий скрипт:
<divhttps://open.spotify.com/album/3SSrh5r6ZphtTUQW4Bk8Y»…
задан 27 авг ’20 в 17:05
Не меняется контент при переключении табсов
Использую радиобаттоны как табсы. При клике на следующую кнопку, должен менятся контент на странице, но этого не происходит. При переключении статично висит контент от первого табса.
var …
задан 10 июл ’20 в 15:42
Stack Overflow на русском лучше работает с включенным JavaScript
Ваша конфиденциальность
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Принять все файлы cookie
Настроить параметры
tabs » Скрипты для сайтов
10 902
Скрипты / Tabs
Адаптивные вкладки — Responsive Tabs
Плагин отзывчивых вкладок. Вкладки трансформируются в аккордион при достижении заданного CSS breakpoint. Использование этого скрипта для табов будет отлично выглядеть и на десктопе, и на планшете и на мобильном устройстве.
5 929
Скрипты / Tabs
Tabulous — плагин вкладок, табов
Tabulous — представляет собой плагин для реализации у себя на сайте блока с вкладками с различными эффектами переключения самих вкладок.
5 564
Скрипты / Tabs
Адаптивные вкладки на jQuery
Несколько строк кода на jQuery + один CSS файл и отличные адаптивные вкладки готовы. Внешний вид полностью настраивается стилями. При уменьшении размера окна браузера до заданного в @media{} вкладки из горизонтальных преобразуются в вертикальный аккордион.
6 034
Скрипты / Tabs
Адаптивные вкладки преобразующиеся в аккордион
Легкий jQuery плагин, который преобразует обычные горизонтальные или вертикальные вкладки на устройствах с меньшим размером экрана в аккордион.
3 018
Скрипты / Tabs
DOMTab — вкладки на javascript
DOMtab — это jаvascript, который связывает ссылки из списка с секциями контента в виде таб интерфейса. Данные табы очень хорошо поддаются внешнему преобразованию с помощью CSS свойств, что позволит вписать их в любой дизайн. Ни каких jQuery и Mootools библиотек не используется, только чистый jаvascript.
4 160
Скрипты / Tabs
jTabs — плагин вкладок
jTabs — плагин вкладок использующий jQuery.
3 942
Скрипты / Tabs
Универсальные вкладки на jQuery
Простая реализация создания горизонтальных или вертикально расположенных вкладок на jQuery с использованием нескольких строк кода для управления вкладками.
5 193
Скрипты / Tabs
Ajax вкладки
Сделаем вкладки (tabs) используя jQuery и технологию ajax для подгрузки содержимого из файлов (или базы данных).
2 532
Скрипты / Tabs
Вкладки — tabs
Простая реализация вкладок на jаvascript без подключения сторонних java библиотек.
3 616
Скрипты / Accordion
Гибкий аккордеон
Создадим простой быстрореагирующий аккордеон, который при раскрытии будет перемещаться к верхней области просмотра. Также будет добавлено несколько переходов CSS3 для стрелки. Гибкость заключается в том, что ширина аккордеона будет подстраиваться под размеры экрана.
3 080
Скрипты / Tabs
Вкладки со скошенными углами
Использование вкладок очень актуально при наличии большого количества информации на сайте. Сейчас как правило уже по дефолту стараются использовать скругление углов, а мы же сделаем скошенные уголки у наших вкладок.
3 213
Скрипты / Tabs
Вертикальное tabmenu
Вертикальное меню в котором скрипт создает вкладки из ul и li элементов. Контент отображается, когда вы наводите курсор мыши на вкладку меню. Скрипт предтсавляет собой комбинацию приёмов CSS и jQuery.
- Назад
- 1
- 2
- Вперёд
Создание табов на чистом JS
JS 2 min
Привет! Давайте создадим табы на чистом JS для сайта. Для удобства, я сделал видео, оно выше.
Вступление
Давайте определимся для начала, что же такое табы? Табы — это элемент страницы, кнопки, которые переключают контент на странице (скрывают или показывают). С помощью табов легко делить информацию на странице на какие-либо категории. Давайте разберемся, как такое сделать
HTML
<div>
<ul>
<li><button data-tabs-path="main">Главная</button></li>
<li><button data-tabs-path="archive">Архив</button></li>
<li><button data-tabs-path="settings">Настройки</button></li>
</ul>
<div data-tabs-target="main">
<div>
<h3>Добро пожаловать!</h3>
<p>Здесь находятся все ваши активные заказы.</p>
<ul>
<li>
<a href="#">
<span>Занятия йогой</span>
</a>
</li>
<li>
<a href="#">
<span>Кардио</span>
</a>
</li>
<li>
<a href="#">
<span>Силовые тренировки</span>
</a>
</li>
</ul>
</div>
</div>
<div data-tabs-target="archive">
<div>
<h3>Добро пожаловать!2</h3>
<p>Здесь находятся все ваши активные заказы.</p>
<ul>
<li>
<a href="#">
<span>Занятия йогой</span>
</a>
</li>
<li>
<a href="#">
<span>Кардио</span>
</a>
</li>
<li>
<a href="#">
<span>Силовые тренировки</span>
</a>
</li>
</ul>
</div>
</div>
<div data-tabs-target="settings">
<div>
<h3>Добро пожаловать!3</h3>
<p>Здесь находятся все ваши активные заказы.</p>
<ul>
<li>
<a href="#">
<span>Занятия йогой</span>
</a>
</li>
<li>
<a href="#">
<span>Кардио</span>
</a>
</li>
<li>
<a href="#">
<span>Силовые тренировки</span>
</a>
</li>
</ul>
</div>
</div>
</div>
Немаленький код, но тут больше всего места занимает сам контент. По факту, нас интересуют кнопки tabs__btn
с их дата-атрибутами, а также tabs__content
с их атрибутами.
CSS
Посмотрите его в исходниках
JS
document.addEventListener('DOMContentLoaded', () => {
const tabs = document.querySelector('.tabs');
const tabsBtn = document.querySelectorAll('.tabs__btn');
const tabsContent = document.querySelectorAll('.tabs__content');if (tabs) {
tabs.addEventListener('click', (e) => {
if (e.target.classList.contains('tabs__btn')) {
const tabsPath = e.target.dataset.tabsPath;
tabsBtn.forEach(el => {el.classList.remove('tabs__btn--active')});
document.querySelector(`[data-tabs-path="${tabsPath}"]`).classList.add('tabs__btn--active');
tabsHandler(tabsPath);
}
});
}
const tabsHandler = (path) => {
tabsContent.forEach(el => {el.classList.remove('tabs__content--active')});
document.querySelector(`[data-tabs-target="${path}"]`).classList.add('tabs__content--active');
};
});
Что же мы тут делаем?
- Находим все кнопки и все контенты в переменные
tabsBtn
иtabsContent
. - Делаем обработчик клика по табам, и проверяем, если кликаем именно на кнопки
tabsBtn
— выполняем некие действия. - Первое из них — забираем атрибут
data-tabs-path
у текущей нажатой кнопки. - Второе — снимаем класс активности со всех кнопок
- Третье — находим текущую кнопку и даем ей класс активности.
- Используем функцию
tabsHandler
, в которой снимаем у всех контентов класс и через ранее созданную переменнуюpath
находим нужный контент и даем ему класс активности.
Все очень просто, и более детально вы можете посмотреть в видео в начале статьи.
Надеюсь, было полезно. Удачи!
Исходники по данной теме: github
Об авторе блога
MaxGraph
Автор. Веб-разработчик. Фрилансер. Преподаватель в онлайн-университете.
Портфолио: https://maxgraph.ru/
Добавляйтесь в друзья VK! Каждому добавившемуся и написавшему в личку «хочу полезность» — подарю набор крутых ссылок для верстальщика.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
|
9 простых фрагментов CSS и JS для создания красивых вкладок
Вкладки
— это фундаментальная часть Интернета, и они существуют уже много лет, но с появлением еще большего числа разработчиков, открывающих исходный код, появляется целый мир бесплатных фрагментов кода.
Если вы создаете виджет с вкладками, вы всегда можете начать с нуля или переделать чужой код и стилизовать элемент в соответствии с вашим проектом.
Вот почему я создал эту коллекцию фрагментов виджетов с лучшими вкладками. Каждый из них уникален, с ним легко работать и предлагает обширный код, который вы можете скопировать и отредактировать в своей работе.
Панель инструментов веб-дизайнера
Неограниченное количество загрузок: более 1 000 000 веб-шаблонов, тем, плагинов, ресурсов дизайна и многое другое!
1. Светящиеся вкладки
Глядя на эти уникальные светящиеся вкладки, вы можете быть удивлены, узнав, что они работают в основном на CSS. Есть функция jQuery для создания эффекта скольжения, но весь дизайн построен на коде CSS.
Разработчик
Саймон Геллнер создал это как интересный проект для виджетов с вкладками. Контейнер остается на фиксированной высоте, что действительно важно для некоторых страниц.
Кроме того, курсоры, указывающие вниз, позволяют узнать, какой элемент в настоящее время активен вместе с элементом, на который вы наводите курсор. Это довольно изящный виджет с вкладками, который наверняка поместится на любом типичном веб-сайте.
Но я думаю, что он особенно хорошо вписался бы в минималистичный макет, где стили вкладок действительно могли бы сиять.
2. Виджет с вкладками
Хотите что-нибудь поменьше и проще в обращении? Взгляните на этот простой виджет с вкладками, созданный CSSFlow.
Идея довольно простая, но функциональность весьма удивительна. Весь виджет с вкладками работает на CSS, поэтому он должен работать в большинстве современных браузеров без сбоев. Эффект выделения на выбранной вкладке является желанным атрибутом для привлечения внимания и сосредоточения внимания на странице.
Кроме того, вы можете легко расширить этот виджет, сделав его намного шире и толще, вмещая больше контента, сохраняя при этом все вкладки одинакового размера.
3. Вкладки Aria
Эти нестандартные вкладки Aria были созданы для простоты и максимального удобства использования. Он работает на jQuery, но также предназначен для поддержки атрибутов ARIA для программ чтения с экрана и других проблем доступности.
Вот почему вкладки такие простые. Каждый из них включает настраиваемую CSS-анимацию, но фактическое поведение полностью совместимо практически со всеми браузерами.
Возможно, вам придется потратить немного времени на этот код, если вы хотите, чтобы они работали в вашем собственном проекте.Но это также простой процесс, если вы разберетесь с jQuery.
4. Планирование
Как часто вы видите такие виджеты расписания с вкладками на сайтах конференций? Они практически являются краеугольным камнем каждой конференции, помогая продать мероприятие и спикеров.
С помощью этого виджета планирования вы можете быстро воссоздать аналогичный элемент для любого стиля страницы. Это позволяет вам определять собственные виджеты и переключаться между ними, используя немного jQuery.
Хотя я бы сказал, что код JavaScript немного беспокойный и произвольный в зависимости от классов, используемых в этой ручке.Так что, если вы перенесли это в проект, вы могли бы немного очистить HTML и JavaScript.
5. Регулируемая высота
Ищете вкладки с переменной высотой, которые регулируются в зависимости от содержимого? Это может показаться сложной задачей, не вызывая массовых переходов по страницам.
Но разработчик Джозеф Фуско создал красивый переходный виджет с вкладками, основанный исключительно на CSS. Впечатляет, учитывая безумно плавные переходы!
Контент имеет собственный эффект затухания, а также контейнер переменной ширины.Таким образом, вы можете запустить две или 10 вкладок и при этом уместить весь необходимый вам контент.
6. Вкладки на чистом CSS
Вот еще один пример вкладок с чистым CSS, созданных для статьи SitePoint, в которой подробно описаны CSS-альтернативы виджетам JavaScript.
вкладок были созданы на основе JavaScript в течение многих лет, и вы до сих пор обнаруживаете, что большинство вкладок основано на JavaScript. Но можно создавать вкладки только для CSS, и эта ручка — отличный пример.
Я признаю, что цвета немного просты, и есть много места, чтобы придать этой штуке совершенно новый вид.Но с точки зрения пользовательского опыта эти вкладки великолепны, и они кажутся подлинными для решения, основанного только на CSS.
7. Простые конструкции вкладок
Говоря о действительно простых вкладках, вам может понравиться этот набор, работающий на сочетании CSS и JavaScript. Они используют гораздо более уникальную анимацию, а стили CSS легче вписываются в любую страницу.
На самом деле анимация чертовски крутая , потому что это не то, что вы обычно видите. Содержимое отдельных вкладок скользит вниз и исчезает из поля зрения, почти как на карточках.
Весь этот виджет кажется невероятно легким, и это определенно одна из самых крутых функций с вкладками, обладающая универсальной привлекательностью.
8. Закругленные выступы
Раньше, когда для закругленных углов требовались хаки CSS, на создание таких стилей вкладок уходили часы. Но теперь с помощью CSS3 вы можете легко создать виджет с закругленными вкладками, используя всего несколько десятков строк CSS.
Конечно, это перо работает на более чем 170 строках кода, но при этом имеет более детальный дизайн. Он полагается на jQuery для переключения контента, и вы заметите, что для его работы требуется всего около 20 строк JavaScript.
Хороший маленький виджет, если вам нужны простые вкладки, охватывающие весь контейнер (или страницу!).
9. Адаптивные вкладки
Об этих адаптивных вкладках от Леви Хасси можно много сказать.
Эффекты наведения фантастические и кажутся уникальными для этого виджета. Но главное — это эффекты анимации и переходы.
Он кажется невероятно плавным, и при переходе с вкладки с большим количеством контента на вкладку меньшего размера нет риска огромного скачка страницы.Это должен быть один из самых простых виджетов вкладок, предлагающих наибольшую ценность, и он мог бы стать отличным шаблоном для проектов веб-разработчиков.
Пример вкладок навигации Javascript | Mobiscroll
Пользовательский интерфейс для навигации, включающий гамбургер-меню, компоненты навигации снизу и вкладки.
Используйте его на адаптивных веб-сайтах и в мобильных приложениях.Вместе с компонентом mobiscroll Page делает простой в использовании инструмент для создания удобной навигации.
Доставка с полезными функциями для усовершенствованного пользовательского интерфейса, в том числе:
- Использование на мобильных устройствах и настольных компьютерах с адаптивными функциями
- Значки и метки для выразительных навигационных целей
- Эргономичная нижняя навигация
- Прокручиваемый список вкладок
- Компактное гамбургерное меню для экономии места
- Поддержка нескольких тем
- Верхний, нижний и встроенный дисплей
- Поддержка RTL
- Полная локализация
Демонстрационные версии навигации доступны для других платформ.
Просмотр демонстраций и кода для
Просмотрите различные компоненты и демонстрации
Закрывать
Используйте нижнюю навигацию для навигационного решения верхнего уровня в вашем приложении. Когда вы перемещаетесь между страницами одного уровня иерархии, это дает согласованный вид на каждой странице .Хотя ее также можно отобразить в верхней части области просмотра, на мобильных портативных устройствах нижняя панель навигации является наиболее доступной. Это эргономичный .
Элементы навигации можно использовать как со значками , так и с ярлыками . Кроме того, на каждом элементе может отображаться значок , содержащий динамическую информацию. Например количество непрочитанных уведомлений.
Нижний компонент навигации автоматически скрывает элементы навигации за кнопкой «Дополнительно», когда область просмотра недостаточно широка.Это поведение можно дополнительно настроить с помощью настроек layout
.
Используйте вкладку навигации для организации содержимого по категориям.
Компонент навигации по вкладкам поддерживает жесты смахивания для списка вкладок , что делает компонент масштабируемым решением для любого количества вкладок.
Вкладки могут объединять значков и ярлыков , чтобы быть более выразительными, как в этой демонстрации.
Также можно настроить переход между вкладками. Ознакомьтесь с демонстрацией работы с навигацией с помощью внешних кнопок.
Компонент навигации вкладок настраивается различными способами.В этой демонстрации показано, как добавить пользовательских кнопок «Назад» / «Далее» рядом с компонентом «Вкладка» и как сделать изменение страницы очевидным.
Если вы ищете простейшее решение для группировки контента, взгляните на демонстрацию предыдущих вкладок.
Добавьте значков и ярлыков к элементам навигации, чтобы они были более информативными.Создавайте и сохраняйте собственные наборы значков из более чем 2500 значков на выбор.
Используйте прокручиваемый список вкладок для самостоятельной настройки управления контентом для настольных компьютеров и мобильных устройств.
Компоненты навигации поставляются с различными перехватчиками событий для глубокой настройки.События запускаются в течение жизненного цикла компонента, где вы можете связать пользовательские функции и код.
Пока пользователи взаимодействуют с пользовательскими интерфейсами, будут запускаться такие события пользовательского интерфейса, как onItemTap
, onMenuShow
, onMenuHide
….
Взаимодействуйте с примером и проверьте журнал событий на предмет вывода.
Настройте навигацию на отзывчивую работу.Используйте подходящее позиционирование и рендеринг в зависимости от размера экрана.
У вас может быть Гамбургер-меню на маленьких экранах и Навигация по вкладкам на больших экранах .
Все это можно настроить с помощью параметра Response
, в котором вы передаете параметры для каждой точки останова.
отзывчивый: { xsmall: {...}, маленький: {...}, средний: {...}, большой: {...}, xlarge: {...} }
Навигация снизу и вкладки может одинаково хорошо подходить для управления контентом в настольных веб-приложениях и на больших экранах.
Вы можете выбирать между одним и другим в зависимости от макета вашего контента или использовать оба, как в этом примере.
Ищете что-то, чего не видели, или у вас есть вопрос о продаже?
Спросите нас об этом, мы здесь, чтобы помочь.
Спроси нас о чем угодно
Настройте и попробуйте демонстрации локально
Войдите или начните пользоваться бесплатной пробной версией
Какой фреймворк вы используете?
Javascript
jQuery
AngularJS
Угловой
Реагировать
Другое
Установите демо в свое приложение
Следуйте этому быстрому двухминутному руководству по установке
Закрыть окно
Установите демо в свое приложение
Следуйте этому быстрому двухминутному руководству по установке
Закрыть окно
Настройте и попробуйте демонстрации локально
Как бы вы хотели это сделать?
Установите демо в свое приложение
Следуйте этому быстрому двухминутному руководству по установке
Закрыть окно
Спасибо за скачивание
Попробуйте и настройте приложение локально
Распакуйте zip-файл и запустите проект, как любое приложение Ionic.Убедитесь, что у вас установлен Ionic CLI, и откройте терминал в корневой папке приложения.
Шаг 1. Запуск в корневой папке
$ npm установить
Шаг 2. Запустите приложение.
$ ионная подача
Сообщите нам, если мы сможем помочь и получить удовольствие!
Спасибо за скачивание
Локальная настройка демонстраций
Все настроено так, что можно сразу окунуться и начать исследовать.
Мы настроили пробную версию, чтобы вы могли опробовать демонстрационные версии локально.
Распакуйте zip-файл и откройте демоверсию в своем любимом браузере.
Чтобы установить Mobiscroll в свой проект
следуйте инструкциям на этой странице.
Сообщите нам, если мы сможем помочь и получить удовольствие! 👍
Спасибо за скачивание
Локальная настройка демонстраций
Извлеките zip-файл и запустите проект, как любое приложение Angular CLI.Убедитесь, что у вас установлен Angular CLI.
Для установки и использования распакуйте zip-файл, откройте окно терминала и выполните следующие действия.
Шаг 1. Запуск в корневой папке
$ npm установить
Шаг 2. Запустите приложение.
$ нг подача - открыть
Сообщите нам, если мы сможем помочь и получить удовольствие! 👍
Спасибо за скачивание
Локальная настройка демонстраций
Все настроено так, что можно сразу окунуться и начать исследовать.
Мы настроили пробную версию, чтобы вы могли опробовать демонстрационные версии локально.
Самый простой способ начать — следовать инструкциям по установке и
получение кода прямо с демонстрационной страницы. Сообщите нам, если мы сможем помочь и получить удовольствие! 👍
В zip-файле вы найдете полнофункциональное приложение для кухонной мойки Ionic.
Спасибо за скачивание
Локальная настройка демонстраций
Все настроено так, что можно сразу окунуться и начать исследовать.
Мы настроили пробную версию, чтобы вы могли опробовать демонстрационные версии локально.
В демонстрациях используется встроенный в браузер Babel преобразователь ES6 и JSX.
Распакуйте zip-файл и откройте демоверсию в браузере. Чтобы установить Mobiscroll в свой проект
следуйте инструкциям на этой странице.
Сообщите нам, если мы сможем помочь и получить удовольствие! 👍
Настройте и попробуйте эту демонстрацию локально
Войдите или начните пользоваться бесплатной пробной версией
Изменить пароль
Необходимо обновить пароль? Войдите и нажмите кнопку под
Изменить пароль
Необходимо обновить пароль? Войдите и нажмите кнопку под
Ваш пароль изменен!
Пример вкладок с автоматической активацией
Пример вкладок с автоматической активацией | Авторские практики WAI-ARIA 1.1
Этот пример раздела демонстрирует виджет вкладок, который реализует шаблон проектирования для вкладок.
В этом примере вкладка активируется автоматически, и связанная с ней панель отображается, когда вкладка получает фокус.
Вкладки должны автоматически активироваться только в тех случаях, когда панели могут отображаться мгновенно, то есть все содержимое панели присутствует в DOM.
Дополнительные инструкции см. В разделе «Решение, когда делать выбор, автоматически следуя фокусу».
Подобные примеры включают:
Пример
Нильс Фрам
Агнес Обель
Шутить
Нильс Фрам — немецкий музыкант, композитор и продюсер из Берлина. Он известен сочетанием классической и электронной музыки и нетрадиционным подходом к игре на фортепиано, в котором он сочетает рояль, пианино, Roland Juno-60, фортепиано Rhodes, драм-машину и Moog Taurus.
Агнес Кэролайн Тааруп Обель — датская певица и автор песен. Ее первый альбом Philharmonics был выпущен компанией PIAS Recordings 4 октября 2010 года в Европе. В июне 2011 года Филармония получила золотой сертификат Бельгийской ассоциации развлечений (BEA) за продажи 10 000 копий.
Страх сложных зданий:
Сложный комплексный комплекс.
Специальные возможности
Чтобы продемонстрировать эффекты удаления вкладки, третья вкладка, обозначенная Шутка
,
можно удалить, когда он находится в фокусе, нажав Удалить .
Подставка для клавиатуры
Ключ | Функция |
---|---|
Вкладка |
|
Стрелка вправо |
|
Стрелка влево |
|
Дом | Перемещает фокус на первую вкладку и активирует ее. |
Конец | Перемещает фокус на последнюю вкладку и активирует ее. |
Удалить | Когда фокус находится на вкладке Joke, удаляет вкладку из списка вкладок и переводит фокус на предыдущую вкладку. |
Роль, свойство, состояние и атрибуты Tabindex
Роль | Атрибут | Элемент | Использование |
---|---|---|---|
список | див | Указывает, что элемент служит контейнером для набора вкладок. | |
aria-label = | див | Предоставляет метку, описывающую назначение набора вкладок. | |
вкладка | кнопка |
| |
aria-selected = | кнопка |
| |
aria-selected = | кнопка |
| |
tabindex = | кнопка |
| |
aria-controls = | кнопка | Относится к элементу tabpanel , связанному с вкладкой. | |
панель вкладок | див |
| |
aria-labelledby = | див |
| |
tabindex = | див |
|
Исходный код JavaScript и CSS
Исходный код HTML
Шаблон дизайна вкладок в WAI-ARIA Authoring Practices 1.1
chrome.tabs - Разработчики Chrome
# Manifest
Вы можете использовать большинство Chrome.вкладки
методов и событий без объявления каких-либо разрешений в файле манифеста расширения. Однако, если вам требуется доступ к свойствам url
, pendingUrl
, title
или favIconUrl
tabs.Tab , вы должны объявить разрешение "tabs"
в манифесте, как показано ниже:
{
"имя": "Мое расширение",
...
"разрешения": [
"вкладки"
],
...
}
# Примеры
В следующих разделах показано несколько общих варианты использования для chrome.вкладок API.
# Открытие страницы расширения в новой вкладке
Распространенным шаблоном для расширений является открытие страницы адаптации в новой вкладке, когда расширение установлено. В следующем примере показано, как это сделать.
Скрипты содержимого не могут использовать chrome.tabs.create ()
.
chrome.runtime.onInstalled.addListener ((причина) => {
if (cause === chrome.runtime.OnInstalledReason.INSTALL) {
chrome.tabs.create ({
url: 'onboarding.html '
});
}
});
# Получить текущую вкладку
Этот пример демонстрирует, как фоновый сценарий может получить текущую вкладку.
В этом примере требуется Manifest V3 из-за использования обещаний. Кроме того, сценарии содержимого не могут использовать tabs.query
.
асинхронная функция getCurrentTab () {
let queryOptions = {active: true, currentWindow: true};
let [tab] = ждать chrome.tabs.query (queryOptions);
возвратный язычок;
}
# Отключить звук указанной вкладки
В этом примере показано, как расширение может переключать отключенное состояние для данной вкладки.
Требуется Manifest V3 из-за использования обещаний. Скрипты содержимого не могут использовать tabs.get
или tabs.update
.
function toggleMuteState (tabId) {
chrome.tabs.get (tabId, async (tab) => {
let muted =! Tab.mutedInfo.muted;
await chrome.tabs.update (tabId, {muted}) );
console.log (`Вкладка $ {tab.id} $ {отключена? 'Отключена': 'включена'}`);
});
}
# Переместить текущую вкладку в первую позицию при нажатии
В этом примере показано, как переместить вкладку, когда перетаскивание может или не может выполняться.
Требуется
Manifest V3 из-за использования Promises и chrome.tabs.onActivated (), заменяющих chrome.tabs.onSelectionChanged (). Использование catch (error) в контексте Promise — это способ гарантировать, что ошибка, которая в противном случае заполняет chrome.runtime.lastError, не снята. В этом примере используется chrome.tabs.move, но тот же шаблон ожидания можно использовать для других вызовов, которые изменяют вкладки во время перетаскивания.
chrome.tabs.onActivated.addListener (activeInfo => move (activeInfo));
async function move (activeInfo) {
try {
await chrome.tabs.move (activeInfo.tabId, {index: 0});
console.log («Успех.»);
} catch (error) {
if (error == 'Ошибка: сейчас нельзя редактировать вкладки (пользователь может перетаскивать вкладку).') {
setTimeout (() => move (activeInfo), 50);
}
}
}
# Дополнительные образцы
Дополнительные примеры, демонстрирующие API вкладок, см. В каталоге mv2-archive / api / tabs репозитория chrome-extensions-samples.
MutedInfo
Отключенное состояние вкладки и причина последнего изменения состояния.
Свойства
extensionId
строка необязательно
Идентификатор расширения, изменившего состояние отключения звука. Не устанавливается, если расширение не было причиной последнего изменения состояния без звука.
Отключен ли звук на вкладке (не воспроизводится звук). Вкладка может быть отключена, даже если она не воспроизводилась или в настоящее время не воспроизводится звук. Эквивалентно тому, отображается ли индикатор звука «без звука».
Причина включения или отключения звука вкладки.Не устанавливается, если отключенное состояние вкладки никогда не менялось.
MutedInfoReason
Событие, вызвавшее изменение состояния без звука.
Enum
«пользователь», «захват» или «расширение»
Вкладка
Свойства
Активна ли вкладка в своем окне. Не обязательно означает, что окно сфокусировано.
Издает ли вкладка звук за последние пару секунд (но он может не быть слышен, если он также отключен).Эквивалентно тому, отображается ли индикатор «звук динамика».
Chrome 54+
Может ли браузер автоматически закрывать вкладку при нехватке ресурсов.
Chrome 54+
Отменена ли вкладка. Отброшенная вкладка — это вкладка, содержимое которой было выгружено из памяти, но все еще отображается в полосе вкладок. Его содержимое перезагружается при следующей активации.
favIconUrl
строка необязательно
URL-адрес значка вкладки.Это свойство присутствует только в том случае, если манифест расширения включает разрешение
«вкладки»
. Это также может быть пустая строка, если вкладка загружается.Chrome 88+
Идентификатор группы, к которой принадлежит вкладка.
Высота вкладки в пикселях.
Указывает, выделена ли вкладка.
Идентификатор вкладки. Идентификаторы вкладок уникальны в рамках сеанса браузера. В некоторых случаях вкладке может не быть присвоен идентификатор; например, при запросе внешних вкладок с использованием
сеансов
API, и в этом случае может присутствовать идентификатор сеанса.Идентификатор вкладки также может быть установлен наchrome.tabs.TAB_ID_NONE
для окон приложений и инструментов разработчика.Указывает, находится ли вкладка в окне в режиме инкогнито.
Отсчитываемый от нуля индекс вкладки в ее окне.
Отключение звука вкладки и причина последнего изменения состояния.
openerTabId
номер необязательно
Идентификатор вкладки, которая открыла эту вкладку, если таковая имеется. Это свойство присутствует только в том случае, если открывающая вкладка все еще существует.
pendingUrl
строка необязательно
Chrome 79+
URL-адрес, по которому вкладка переходит до фиксации. Это свойство присутствует только в том случае, если манифест расширения включает разрешение
«вкладки»
и есть ожидающая навигация.Закреплена ли вкладка.
sessionId
string optional
Идентификатор сеанса, используемый для однозначной идентификации вкладки, полученной из
сеансов
API.Состояние загрузки вкладки.
Заголовок вкладки. Это свойство присутствует только в том случае, если манифест расширения включает разрешение
«вкладки»
.Последний зафиксированный URL-адрес основного фрейма вкладки. Это свойство присутствует только в том случае, если манифест расширения включает в себя разрешение «вкладки» и может быть пустой строкой, если вкладка еще не зафиксирована. См. Также
Tab.pendingUrl
.Ширина вкладки в пикселях.
Идентификатор окна, содержащего вкладку.
TabStatus
Состояние загрузки вкладки.
Enum
«выгружено», «загружено» или «завершено»
WindowType
Тип окна.
Enum
«нормальный», «всплывающий», «панель», «приложение» или «инструменты разработчика»
ZoomSettings
Определяет, как обрабатываются изменения масштаба на вкладке и в каком объеме.
Свойства
defaultZoomFactor
число необязательно
Используется для возврата уровня масштабирования по умолчанию для текущей вкладки при вызовах вкладок.getZoomSettings.
Определяет, как обрабатываются изменения масштаба, т. Е. Какой объект отвечает за фактическое масштабирование страницы; по умолчанию
автоматически
.Определяет, сохраняются ли изменения масштаба для исходной страницы страницы или действуют только на этой вкладке; по умолчанию
для каждого источника
в автоматическом режимедля вкладки
в противном случае.
ZoomSettingsMode
Определяет, как обрабатываются изменения масштабирования, т.е.д., какая сущность отвечает за фактическое масштабирование страницы; по умолчанию автоматически
.
Enum
«автоматически», «вручную» или «отключено»
ZoomSettingsScope
Определяет, сохраняются ли изменения масштабирования для исходной страницы страницы или действуют только на этой вкладке; по умолчанию для каждого источника
в автоматическом режиме
и для вкладки
в противном случае.
Enum
«на источник» или «на вкладку»
MAX_CAPTURE_VISIBLE_TAB_CALLS_PER_SECOND
Chrome 92+
Максимальное количество вызовов captureVisibleTab
в секунду. captureVisibleTab
стоит дорого, и его не следует вызывать слишком часто.
TAB_ID_NONE
Идентификатор, представляющий отсутствие вкладки браузера.
captureVisibleTab
Promise
Захватывает видимую область текущей активной вкладки в указанном окне. Чтобы вызвать этот метод, расширение должно иметь разрешение
Результат
Метод
captureVisibleTab
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3).URL данных, который кодирует изображение видимой области захваченной вкладки. Может быть присвоено свойству src элемента HTML
img
для отображения.
connect
Подключается к сценарию (-ам) содержимого на указанной вкладке. Событие runtime.onConnect
запускается в каждом сценарии содержимого, запущенном на указанной вкладке для текущего расширения. Для получения дополнительных сведений см. Обмен сообщениями сценария содержимого.
Параметры
connectInfo
объект необязательный
Откройте порт для определенного кадра, идентифицированного
frameId
вместо всех кадров на вкладке.Передается в onConnect для сценариев содержимого, которые прослушивают событие подключения.
Возвращает
Порт, который можно использовать для связи со сценариями содержимого, запущенными на указанной вкладке. Событие порта
runtime.Port
запускается, если вкладка закрывается или не существует.
create
create (createProperties: object): Promise
create (createProperties: object, callback ?: function): void
Promise
Создает новую вкладку.
Параметры
Должна ли вкладка стать активной вкладкой в окне. Не влияет на то, находится ли окно в фокусе (см.
windows.update
). По умолчанию true.Положение вкладки в окне. Предоставленное значение ограничено от нуля до количества вкладок в окне.
openerTabId
число необязательно
Идентификатор вкладки, открывшей эту вкладку.Если указано, открывающая вкладка должна находиться в том же окне, что и вновь созданная вкладка.
Следует ли закреплять язычок. По умолчанию false
selected
boolean optional
Deprecated
Пожалуйста, используйте active .
Должна ли вкладка стать выбранной вкладкой в окне. По умолчанию — истина
URL-адрес для первоначального перехода на вкладку. Полностью квалифицированные URL-адреса должны включать схему (т.например, «http://www.google.com», а не «www.google.com»). Относительные URL-адреса относятся к текущей странице в расширении. По умолчанию используется страница новой вкладки.
Окно, в котором создается новая вкладка. По умолчанию используется текущее окно.
Результат
Метод
create
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3).
detectLanguage
detectLanguage (tabId ?: number): Promise
detectLanguage (tabId ?: number, callback: function): void
Promise
Определяет основной язык содержимого в вкладка.
Результат
Метод
detectLanguage
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3).Код языка ISO, например
en
илиfr
. Полный список языков, поддерживаемых этим методом, см. В kLanguageInfoTable. Проверяются столбцы со второго по четвертый, и возвращается первое значение, отличное от NULL, за исключением упрощенного китайского, для которого возвращаетсяzh-CN
.Для неизвестного / неопределенного языка возвращаетсяи
.
discard
discard (tabId ?: number): Promise
discard (tabId ?: номер, обратный вызов ?: функция): void
Promise Chrome 54+
Удаляет вкладка из памяти. Выброшенные вкладки по-прежнему видны на полосе вкладок и перезагружаются при активации.
Параметры
Идентификатор вкладки, которую нужно удалить.Если указано, вкладка отбрасывается, если она не активна или уже не удалена. Если не указано иное, браузер отклоняет наименее важную вкладку. Это может привести к сбою, если не существует отбрасываемых вкладок.
Результат
Вызывается после завершения операции.
Метод
discard
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3).Отклоненная вкладка, если она была успешно удалена; в противном случае не определено.
дубликат
дубликат (tabId: number): Promise
duplicate (tabId: number, callback ?: function): void
Promise
Дублирует вкладку.
Параметры
Идентификатор дублируемой вкладки.
Результат
Метод
duplicate
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3).Подробная информация о дублированной вкладке. Объект
tabs.Tab
не содержитurl
,pendingUrl
,title
иfavIconUrl
, если разрешение«tabs»
не было запрошено.
Параметры
Устарело
Идентификатор вкладки, на которой запускается сценарий; по умолчанию используется активная вкладка текущего окна.
Не рекомендуется
Подробная информация о скрипте, который нужно запустить.Должен быть установлен код или свойство файла, но оба не могут быть установлены одновременно.
Результат
Устарело
Вызывается после выполнения всего JavaScript.
Метод
executeScript
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3).Не рекомендуется
Результат скрипта в каждом введенном кадре.
get
get (tabId: number): Promise
get (tabId: number, callback: function): void
Promise
Извлекает сведения об указанной вкладке.
Результат
Метод
get
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3).
getAllInWindow
getAllInWindow (windowId ?: номер): Promise <объект>
getAllInWindow (windowId ?: номер, обратный вызов: функция): void
Вкладка Promise Manifest V2 9000 Устарело. запрос {windowId: windowId}
.
Получает подробную информацию обо всех вкладках в указанном окне.
Результат
Устарело
Метод
getAllInWindow
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3).
getCurrent
getCurrent (): Promise <объект>
getCurrent (callback: function): void
Promise
Получает вкладку, из которой выполняется этот вызов скрипта. Может быть неопределенным при вызове из контекста без вкладки (например, фоновой страницы или всплывающего окна).
Результат
Метод
getCurrent
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3).
getSelected
getSelected (windowId ?: number): Promise
getSelected (windowId ?: номер, обратный вызов: функция): void
Promise Manifest V2 Устарело
Используйте tabs. запрос
{active: true}
.
Получает вкладку, выбранную в указанном окне.
Результат
Устарело
Метод
getSelected
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3).
getZoom
getZoom (tabId ?: number): Promise
getZoom (tabId ?: number, callback: function): void
Promise
Получает текущий коэффициент масштабирования указанного таб.
Параметры
Идентификатор вкладки, для которой требуется получить текущий коэффициент масштабирования; по умолчанию используется активная вкладка текущего окна.
Результат
Вызывается с текущим коэффициентом масштабирования вкладки после его выборки.
Метод
getZoom
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3).Текущий коэффициент масштабирования вкладки.
getZoomSettings
getZoomSettings (tabId ?: number): Promise
getZoomSettings (tabId ?: number, callback: zoom): void
Promise
текущие настройки Gets
указанная вкладка.
Параметры
Идентификатор вкладки, из которой нужно получить текущие настройки масштабирования; по умолчанию используется активная вкладка текущего окна.
Результат
Вызывается с текущими настройками масштабирования вкладки.
Метод
getZoomSettings
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3).
goBack
goBack (tabId ?: номер): Promise
goBack (tabId ?: номер, обратный вызов ?: функция): void
Promise Chrome 72+
Вернуться к предыдущая страница, если таковая имеется.
Параметры
Идентификатор вкладки для возврата назад; по умолчанию используется выбранная вкладка текущего окна.
Результат
Метод
goBack
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3). У него нет параметров.
goForward
goForward (tabId ?: номер): Promise
goForward (tabId ?: номер, обратный вызов ?: функция): void
Promise Chrome 72+
Перейти к следующая страница, если таковая имеется.
Параметры
Идентификатор вкладки для перехода вперед; по умолчанию используется выбранная вкладка текущего окна.
Результат
Метод
goForward
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3). У него нет параметров.
group
group (options: object): Promise
group (options: object, callback ?: function): void
Promise Chrome 88+
Добавляет одну или несколько вкладок в указанная группа или, если группа не указана, добавляет указанные вкладки во вновь созданную группу.
Параметры
createProperties
объект необязательный
Конфигурации для создания группы. Не может использоваться, если groupId уже указан.
Окно новой группы. По умолчанию используется текущее окно.
Идентификатор группы, в которую нужно добавить вкладки. Если не указано, будет создана новая группа.
Идентификатор вкладки или список идентификаторов вкладок для добавления в указанную группу.
Результат
Метод
group
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3).Идентификатор группы, в которую были добавлены вкладки.
выделить
выделить (highlightInfo: object): Promise
highlight (highlightInfo: object, callback ?: function): void
Promise
Выделяет данные вкладки и фокусируется на них. первый из группы.Будет казаться, что ничего не делает, если указанная вкладка в настоящее время активна.
Параметры
Один или несколько индексов вкладок для выделения.
Окно, содержащее вкладки.
Результат
Метод выделения
Promise
(только MV3).Содержит сведения об окне, вкладки которого были выделены.
Параметры
Устарело
Идентификатор вкладки, в которую нужно вставить CSS; по умолчанию используется активная вкладка текущего окна.
Устарело
Подробная информация о вставляемом тексте CSS. Должен быть установлен код или свойство файла, но оба не могут быть установлены одновременно.
Результат
Устарело
Вызывается после вставки всего CSS.
Метод
insertCSS
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3). У него нет параметров.
move
move (tabIds: number | number [], moveProperties: object): Promise
move (tabIds: number | number [], moveProperties: object, callback ?: функция): void
Promise
Перемещает одну или несколько вкладок в новое положение в своем окне или в новое окно.Обратите внимание, что вкладки можно перемещать только в обычные (window.type === «normal») окна и из них.
Параметры
Идентификатор вкладки или список идентификаторов вкладок для перемещения.
Положение, в которое нужно переместить окно. Используйте
-1
, чтобы разместить вкладку в конце окна.По умолчанию используется окно, в котором находится вкладка.
Результат
Метод
move
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3).Подробная информация о перемещенных вкладках.
запрос
запрос (queryInfo: object): Promise <объект>
query (queryInfo: object, callback: function): void
Promise
Получает все вкладки с указанными свойствами , или все вкладки, если свойства не указаны.
Параметры
Активны ли вкладки в своих окнах.
Слышны ли вкладки.
autoDiscardable
boolean optional
Chrome 54+
Может ли браузер автоматически закрывать вкладки при нехватке ресурсов.
currentWindow
boolean optional
discarded
boolean optional
Chrome 54+
Отменены ли вкладки. Отброшенная вкладка — это вкладка, содержимое которой было выгружено из памяти, но все еще отображается в полосе вкладок.Его содержимое перезагружается при следующей активации.
выделено
логическое необязательно
Выделены ли вкладки.
Положение вкладок в своих окнах.
lastFocusedWindow
логическое необязательное
Находятся ли вкладки в последнем фокусированном окне.
Отключение звука на вкладках.
Закреплены ли вкладки.
Сопоставление заголовков страниц с шаблоном.Это свойство игнорируется, если расширение не имеет разрешения
«вкладки»
.url
строка | строка [] необязательный
Сопоставление вкладок с одним или несколькими шаблонами URL. Идентификаторы фрагментов не совпадают. Это свойство игнорируется, если расширение не имеет разрешения
«вкладки»
.Тип окна, в котором находятся вкладки.
Результат
Метод
запроса
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3).
reload
reload (tabId ?: number, reloadProperties ?: object): Promise
reload (tabId ?: номер, reloadProperties ?: объект, обратный вызов ?: функция): void
Promise
Перезагрузить вкладку.
Параметры
Идентификатор вкладки для перезагрузки; по умолчанию используется выбранная вкладка текущего окна.
reloadProperties
объект необязательный
bypassCache
логический необязательный
Следует ли обходить локальное кэширование.По умолчанию
ложно
.
Результат
Метод
reload
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3). У него нет параметров.
remove
remove (tabIds: number | number []): Promise
remove (tabIds: number | number [], callback ?: функция): void
Promise
Закрывается одна или несколько вкладок.
Параметры
Идентификатор вкладки или список идентификаторов вкладок, которые необходимо закрыть.
Результат
Метод
remove
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3). У него нет параметров.
Параметры
Устарело
Идентификатор вкладки, из которой нужно удалить CSS; по умолчанию используется активная вкладка текущего окна.
Устарело
Подробная информация о тексте CSS, который нужно удалить.Должен быть установлен код или свойство файла, но оба не могут быть установлены одновременно.
Результат
Устарело
Вызывается после удаления всего CSS.
Метод
removeCSS
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3). У него нет параметров.
sendMessage
sendMessage (tabId: number, message: any, options ?: object, responseCallback ?: function): void
Отправляет одно сообщение в сценарий (-ы) содержимого на указанной вкладке с необязательный обратный вызов для запуска при отправке ответа.Событие runtime.onMessage
запускается в каждом сценарии содержимого, запущенном на указанной вкладке для текущего расширения.
sendRequest
sendRequest (tabId: number, request: any, responseCallback ?: function): void
Manifest V2 устарел
Используйте runtime.sendMessage
.
Отправляет один запрос к сценарию (-ам) содержимого на указанной вкладке с дополнительным обратным вызовом, который запускается при отправке ответа. Расширение .Событие onRequest
запускается в каждом сценарии содержимого, запущенном на указанной вкладке для текущего расширения.
setZoom
setZoom (tabId ?: number, zoomFactor: number): Promise
setZoom (tabId ?: number, zoomFactor: number, callback ?: function): void
Promise
Zooms указанная вкладка.
Параметры
Идентификатор вкладки для увеличения; по умолчанию используется активная вкладка текущего окна.
Новый коэффициент масштабирования. Значение
0
устанавливает текущий коэффициент масштабирования вкладки по умолчанию. Значения больше0
указывают коэффициент масштабирования (возможно, отличный от значения по умолчанию) для вкладки.
Результат
Вызывается после изменения коэффициента масштабирования.
Метод
setZoom
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3). У него нет параметров.
setZoomSettings
setZoomSettings (tabId ?: number, zoomSettings: ZoomSettings): Promise
setZoomSettings (tabId ?: number, zoomSettings: ZoomSettings, callback ?: function):
настройки масштабирования для указанной вкладки, которые определяют способ обработки изменений масштабирования.Эти настройки сбрасываются до значений по умолчанию при переходе по вкладке.
Параметры
Идентификатор вкладки, для которой нужно изменить настройки масштабирования; по умолчанию используется активная вкладка текущего окна.
Определяет, как обрабатываются изменения масштабирования и в каком объеме.
Результат
Вызывается после изменения настроек масштабирования.
Метод
setZoomSettings
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3).У него нет параметров.
разгруппировать
разгруппировать (tabIds: number | number []): Promise
разгруппировать (tabIds: number | number [], callback ?: функция): void
Promise Chrome 88+
Удаляет одну или несколько вкладок из соответствующих групп. Если какие-либо группы становятся пустыми, они удаляются.
Параметры
Идентификатор вкладки или список идентификаторов вкладок, которые необходимо удалить из соответствующих групп.
Результат
Метод
ungroup
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3).У него нет параметров.
update
update (tabId ?: number, updateProperties: object): Promise
update (tabId ?: number, updateProperties: object, callback ?: function): void
Promise
Изменяет свойства вкладки. Свойства, не указанные в updateProperties, не изменяются.
Параметры
Должна ли вкладка быть активной. Не влияет на то, сфокусировано ли окно (см.
windows.обновление
).autoDiscardable
boolean optional
Chrome 54+
Должен ли браузер автоматически удаляться от вкладки при нехватке ресурсов.
выделено
логическое необязательное
Добавляет или удаляет вкладку из текущего выделения.
Следует ли отключать звук на вкладке.
openerTabId
число необязательно
Идентификатор вкладки, открывшей эту вкладку.Если указано, вкладка открывателя должна находиться в том же окне, что и эта вкладка.
Следует ли закреплять язычок.
selected
boolean optional
Deprecated
Пожалуйста, используйте выделено .
Следует ли выбирать вкладку.
Результат
Метод
update
предоставляет свой результат через обратный вызов или возвращается какPromise
(только MV3).Подробная информация об обновленной вкладке. Объект
tabs.Tab
не содержитurl
,pendingUrl
,title
иfavIconUrl
, если разрешение«tabs»
не было запрошено.
onActivated
onActivated.addListener (listener: function)
Срабатывает при изменении активной вкладки в окне. Обратите внимание, что URL-адрес вкладки может не быть установлен во время запуска этого события, но вы можете прослушивать события onUpdated, чтобы получать уведомления, когда URL-адрес установлен.
onActiveChanged
onActiveChanged.addListener (слушатель: функция)
Manifest V2 устарел
Пожалуйста, используйте tabs.onActivated
.
Срабатывает при изменении выбранной вкладки в окне. Обратите внимание, что URL-адрес вкладки может не быть установлен в момент запуска этого события, но вы можете прослушивать события tabs.onUpdated
, чтобы получать уведомления при установке URL-адреса.
onAttached
onAttached.addListener (listener: function)
Запускается, когда вкладка прикрепляется к окну; например, потому что его перемещали между окнами.
onCreated
onCreated.addListener (listener: function)
Запускается при создании вкладки. Обратите внимание, что URL-адрес вкладки и членство в группе вкладок не могут быть установлены во время запуска этого события, но вы можете прослушивать события onUpdated, чтобы получать уведомления, когда задан URL-адрес или вкладка добавлена в группу вкладок.
Событие
Параметр прослушивателя должен быть функцией, которая выглядит следующим образом:
Подробная информация о созданной вкладке.
onDetached
onDetached.addListener (слушатель: функция)
Запускается, когда вкладка отделяется от окна; например, потому что его перемещали между окнами.
onHighlightChanged
onHighlightChanged.addListener (listener: function)
Manifest V2 Deprecated
Пожалуйста, используйте tabs.onHighlighted
.
Вызывается при изменении выделенных или выбранных вкладок в окне.
onHighlighted
onHighlighted.addListener (listener: function)
Запускается при изменении выделенных или выбранных вкладок в окне.
onMoved
onMoved.addListener (listener: function)
Запускается при перемещении вкладки в окне. Запускается только одно событие перемещения, представляющее вкладку, которую непосредственно переместил пользователь. События перемещения не запускаются для других вкладок, которые должны перемещаться в ответ на перемещение вкладки вручную. Это событие не запускается, когда вкладка перемещается между окнами; подробности см. на вкладках .Обособленный
.
onRemoved
onRemoved.addListener (listener: function)
Запускается при закрытии вкладки.
onReplaced
onReplaced.addListener (listener: function)
Запускается, когда вкладка заменяется другой вкладкой из-за предварительной визуализации или мгновенного выполнения.
onSelectionChanged
onSelectionChanged.addListener (слушатель: функция)
Манифест V2 устарел
Используйте вкладки .Активировано
.
Срабатывает при изменении выбранной вкладки в окне.
onUpdated
onUpdated.addListener (listener: function)
Запускается при обновлении вкладки.
Событие
Параметр прослушивателя должен быть функцией, которая выглядит следующим образом:
(tabId: number, changeInfo: object, tab: Tab) => {...}
Перечисляет изменения в состояние обновленной вкладки.
Новое звуковое состояние вкладки.
autoDiscardable
boolean optional
Chrome 54+
Новое состояние вкладки с автоматическим удалением.
исключено
логическое необязательное
Chrome 54+
Новое состояние отмены вкладки.
favIconUrl
строка необязательно
URL нового значка вкладки.
Chrome 88+
Новая группа вкладки.
Новое отключенное состояние вкладки и причина изменения.
Новое закрепленное состояние вкладки.
Состояние загрузки вкладки.
URL-адрес вкладки, если он изменился.
Показывает состояние обновленной вкладки.
onZoomChange
onZoomChange.addListener (listener: function)
Запускается при увеличении масштаба вкладки.
Вкладки JavaScript: экономьте место! Примеры виджетов с вкладками
Кажется, вкладки воспринимаются как должное, поскольку они являются важным компонентом пользовательского интерфейса сайта и не заслуживают пристального внимания.Но благодаря вкладкам, которые решают вопрос сегментации и организации данных, аудитория сайта может легко выбрать релевантные данные, которые им нужны для изучения. Кроме того, вкладки делают сайт более интерактивным и отзывчивым, добавляя ясности и улучшая взаимодействие с пользователем.
Мы рассмотрели несколько примеров вкладок javascript, в том числе то, как создавать вкладки javascript и какие фрагменты использовать при создании веб-приложения.
Содержание:
Что такое вкладка JavaScript
Вкладка, вкратце, представляет собой единую область / компонент содержимого системы дизайна сайта (также называемую виджетом с вкладками) с несколькими панелями, каждая из которых связана с заголовком / заголовком в списке.Вкладки могут различаться по размеру и форме, они делают страницу веб-сайта более структурированной и доступной. С позиции веб-разработчиков виджеты с вкладками - это набор ссылок или других элементов HTML, которые могут быть визуально представлены в виде кнопок, группы кнопок и некоторыми другими способами. По сути, они просто включают видимость одного блока контента, скрывая другие.
Типы вкладок : Вкладки навигации и модульные вкладки
Часто текущая используемая в фокусе вкладка каким-то образом выделяется или перемещается вперед для пользователя.Таким образом, вкладки можно разделить на вкладки навигации, и модульные вкладки. Вкладки навигации работают как интерактивное пространство, открывающее контент на новой веб-странице. Модульные вкладки открывают дополнительную информацию на той же странице.
Что ж, само собой разумеется, каждый интерфейс спроектирован так, чтобы напоминать вкладки в верхней части традиционных папок с файлами, если смотреть изнутри картотеки. Основное преимущество модульных вкладок заключается в том, что они помогают отображать соответствующие оптимизированные данные в области экрана веб-страницы без загромождения данных и сокращают объем информации на экране до необходимого для отображения.
Прокручиваемые и фиксированные вкладки
Дополнительно вкладки можно разделить на прокручиваемые и фиксированные. Если набор вкладок не помещается на экране, используйте прокручиваемые вкладки. На прокручиваемых вкладках можно использовать более длинные текстовые метки и большее количество вкладок. Их лучше всего использовать для просмотра на сенсорных интерфейсах.
Структура вкладок
Компоненты вкладки состоят из контейнера (рамки), элемента вкладки, значка активной / неактивной вкладки или текста, индикатора вкладки. Вкладки управляют областью пользовательского интерфейса, отображаемой под ними.Вкладки можно объединять с такими компонентами, как верхние панели приложений, или вкладывать в такие компоненты, как карточки и листы. В этом примере у нас нет индикатора четкой вкладки, но мы определили его место номером 2, цель индикатора - показать состояние содержимого в элементе вкладки.
- Рамка (контейнер)
- Индикатор вкладки (активный / неактивный)
- Текст (активный / неактивный)
- Значок / метка (активный / неактивный)
- Элемент вкладки
Общие проблемы, решаемые вкладками
- Организация информации и навигация по блокам информации между группами разного или связанного контента или на одном уровне иерархии сайта
- Легко настраиваемая с помощью цветов или типа контента в соответствии с брендом сайта
- Более быстрая ориентация и управление веб-сайтом данные
Критерии оценки хорошего компонента вкладки
- Взаимодействие с пользователем / внешняя апелляция
- Документация
- Настройка
- Возможность повторного использования
Примеры бесплатных вкладок Javascript
Воспользуйтесь нашими 10 лучшими фрагментами вкладок, которые помогут вам при создании своего сайта.Настройте эти виджеты вкладок абсолютно бесплатно.
1. Вкладки ванильного JavaScript
Simple Fast Vanilla JavaScript Tabs - это простая в обслуживании библиотека стандартного JavaScript для веб-разработки. Этот фрагмент вкладок поможет создать адаптивную вертикальную навигацию. Вкладки Vanilla Javascript чертовски просты в использовании. Вкладки Vanilla Javascript поддерживаются любыми современными браузерами, такими как Chrome, Firefox, Safari, Opera и другими. Прежде всего, вы должны добавить JS vanilla-js-tabs.js и таблицу стилей vanilla-js-tabs.css на страницу.
Демо
GitHub
2. Табби табби
Табби-вкладки - еще один пример чрезвычайно легких и доступных ванильных вкладок-переключателей JS. Скомпилированный и готовый к работе код можно найти в каталоге dist
. Каталог src
содержит код разработки.
Демо
3.Адаптивные вкладки
Adaptive Tabs - очень полезный фрагмент, который можно встроить на страницу вашего сайта. Эти вкладки при переключении анимируются по высоте своего содержимого. Адаптивные вкладки очень просты в использовании, и при переходе с вкладки с большим количеством контента на вкладку меньшего размера нет риска огромного скачка страницы.
Демо
4. Мобильный аккордеон на табы от Chyno Deluxe
Адаптивный, сначала мобильные, раскрывающиеся вкладки «аккордеон» - еще один простой виджет с вкладками для разработчиков, созданный с помощью HTML, CSS (язык SCSS) и JS.Он хорошо работает со всеми современными браузерами, такими как Chrome, Edge, Firefox, Opera, Safari.
Демо
5. Простой дизайн вкладок
Простой дизайн вкладок - это не просто название, он максимально прост в использовании. Этот компонент вкладки построен на сочетании CSS и JavaScript. Содержимое отдельных вкладок скользит вниз и исчезает из поля зрения почти как на карточках. Вся эта функция вкладки дает очень визуальный опыт.
Демо
6.Вкладки CSS
CSS Tabs, by Ramnek Sinkh, сделаны со свойством плавной прокрутки. Без анимации или переходов, используемых для переключения вкладок, переход между вкладками осуществляется с помощью свойства scroll-behavior и HTML-идентификатора.
Демо
7. MetroTab
Вкладки Metro используют библиотеку M4Q, и эти вкладки jQuery свободны. Плагин MetroTab позволяет создавать горизонтальные вкладки, добавляя вкладки класса
в список и атрибут data-role = "tabs"
.И, нижние вкладки
, установив добавить класс.
Демо
8. Адаптивные вкладки / аккордеон в ванильном JavaScript
Responsive Tabs / Accordion - это плагин на чистом JavaScript с аккордеонами и вкладками, предназначенный для создания удобных для мобильных устройств горизонтальных или вертикальных вкладок из неупорядоченных списков HTML с возможностью переключения.
Демо
9. Вкладки Javascript в стиле Material Design Vanilla
Материальный дизайн любят тысячи людей. Вкладки Vanilla JavaScript - еще один полезный фрагмент кода для программистов. Эти вкладки сделаны с использованием чистого Javascript, CSS и CSS3. Более наглядные примеры вкладок материального дизайна см. В этом подробном руководстве.
Демо
10. Практика с вкладками - Vue Challenge, Джек Домлео
Gettin ’Practical - для любителей минималистичного дизайна. Благодаря грамотно упорядоченному подходу вкладки выглядят очень аккуратно. Они работают в Chrome, Safari, Firefox, Opera и Edge.И этот компонент пользовательского интерфейса позволяет переключать вкладки Vue.js.
Демо
11. Петлицы с эластичной окантовкой
Вкладки с эластичной рамкой - еще один вариант использования вкладок. Код представлен в HTML, CSS и Javascript (Babel). Структура кода хорошо организована, а виджет с вкладками выглядит действительно современно.
Демо
Как использовать вкладки Js?
Реализуйте следующие функции, которые позволят вам создавать и переключать вкладки на вашем веб-сайте шаг за шагом в соответствии с этим руководством.
Как сделать переключаемую вкладку на странице?
Чтобы сделать вкладки переключаемыми, добавьте к каждой ссылке атрибут data-toggle = "tab"
. Затем добавьте класс .tab-pane с уникальным идентификатором для каждой вкладки и оберните их внутри элемента div с классом .tab-content
.
Вы также можете активировать вкладки, написав код Javascript. Тогда вам не нужно добавлять атрибут data-toggle = "tab"
.
Отображение вкладки в этом случае будет выполняться путем вызова метода вкладки (‘show’).Этот метод следует использовать для соответствующей вкладки (ссылки) каждый раз, когда пользователь нажимает на нее.
Исходный код JS:
- Исходный код JavaScript состоит из вкладки
$ . функция
. Будет_ elemTabs
и функции_ showTab
,_ switchTabTo
. Внутри этой функции есть переменная_ elemTabs
и функции_ showTab
,_s witchTabTo
.Переменная_elemTabs
имеет DOM-элемент, выглядит как контейнер с вкладками. -
_ showTab
позволяет скрыть активную вкладку и отобразить другую вкладку на основе переданной ссылки._ switchTabTo Метод
используется для переключения вкладки по номеру.addEventListener
устанавливается обработчиками событий. -
_ showTab
и_ switchTabTo
- единственные методы, доступные вне функции.showTab
позволяет перейти на вкладку, передав ссылку на DOM-элемент, а вторая (switchTabTo
) открывает страницу по ее номеру.
Завершение
В конце этого руководства вы поймете, что такое вкладка, как использовать компонент вкладки для создания интерактивных веб-сайтов и мобильных приложений с использованием чистого Javascript. Если вам нужно узнать больше о других элементах и компонентах пользовательского интерфейса, ознакомьтесь с этими статьями:
О компании Flatlogic
Flatlogic - это небольшая группа людей, полных энтузиазма сделать мир более красивым и функциональным.Мы делаем все возможное, чтобы создавать красиво оформленные шаблоны веб-приложений и мобильных приложений, созданные с помощью React и React Native, Vue, Angular и Bootstrap, для создания современных приложений и ускорения разработки. Мы стремимся вести наш бизнес открыто, рука об руку со всеми нашими деловыми партнерами, чтобы создавать коммерчески эффективные отношения, никогда не ставящие под угрозу качество результата.
Компонент вкладок - Vuetify
# Props
# Выровнять с заголовком
Выровнять v-tabs
с компонентом v-toolbar-title
, используя опору align-with-title ( v-app -bar-nav-icon
или v-btn
необходимо использовать в v-toolbar
).
# Активный центр
Опора center-active сделает активную вкладку всегда центрированной
# Пользовательские значки
prev-icon и next-icon можно использовать для применения пользовательских значков разбивки на страницы.
# Фиксированные выступы
Стойка с фиксированными выступами вынуждает v-tab
занимать все доступное пространство вплоть до максимальной ширины (300 пикселей).
# Grow
Опора grow заставит элементы вкладки занимать все доступное пространство до максимальной ширины 300 пикселей.
# Значки и текст
Использование icons-with-text prop увеличивает высоту v-tabs
до 72 пикселей, чтобы можно было использовать как значки, так и текст.
# Pagination
Если элементы вкладки переполняют свой контейнер, элементы управления разбивкой на страницы появятся на рабочем столе. Для мобильных устройств стрелки будут отображаться только с show-arrow prop.
# Правый
Стойка правая выравнивает выступы по правому краю.
# Вертикальные выступы
Вертикальная стойка позволяет размещать компоненты v-tab
вертикально.
# Misc
# Content
Обычно вкладки v-tab
помещают в слот расширения на панели инструментов v-toolbar
. Использование v-toolbar
вкладок prop автоматически настраивает свою высоту до 48 пикселей, чтобы соответствовать v-tabs
.
# Вкладки рабочего стола
Действия v-tab
можно представить с помощью отдельных значков.Это полезно, когда легко сопоставить контент с каждой вкладкой.
# Динамическая высота
При изменении v-tab-item
область содержимого плавно масштабируется до нового размера.
# Динамические вкладки
Вкладки можно динамически добавлять и удалять. Это позволяет выполнить обновление до любого числа, и компонент v-tabs
будет реагировать. В этом примере, когда мы добавляем новую вкладку, мы автоматически меняем нашу модель, чтобы она соответствовала. По мере того, как мы добавляем дополнительные вкладки и переполняем контейнер, выбранный элемент будет автоматически прокручиваться в поле зрения.