hs.webview
Отображение веб-содержимого в окне из Hammerspoon
Этот модуль использует класс WKWebView от Apple WebKit для отображения веб-содержимого с поддержкой вставки JavaScript. Цель состоит в предоставлении функционального интерфейса к классам WKWebView и WKUserContentController.
Этот модуль не предназначен для замены полного веб-браузера и имеет некоторые ограничения, которые следует учитывать:
- Самозаверяющие сертификаты SSL не принимаются, если они не были предварительно одобрены и включены в хранилище ключей пользователя другим способом, например, предварительным открытием страницы в Safari.
- Контекстное меню (щелчок правой кнопкой мыши или щелчок правой кнопкой мыши в веб-вьюере) предоставляет некоторые пункты меню, которые в настоящее время не поддерживаются — известный пример — любой пункт меню «Скачать...» в контекстном меню для ссылок и изображений.
- В настоящее время неясно, как и где хранятся cookie и кэшированные данные страницы, и как их можно сделать недействительными.
- Это можно частично смягчить для веб-запросов, используя
hs.webview:reload(true)и формируя URL дляhs.webview:url({...})в виде таблицы — см. соответствующие справки для получения дополнительной информации.
- Это можно частично смягчить для веб-запросов, используя
Любые предложения или обновления кода для решения этих или других ограничений, которые могут проявиться, приветствуются на сайте Hammerspoon в GitHub: https://www.github.com/Hammerspoon/hammerspoon
Подмодули
Обзор API
- Устаревшие — функции API, которые будут удалены в будущих выпусках
- Константы — полезные значения, которые нельзя изменить
- Функции — вызовы API, предлагаемые непосредственно расширением
- Конструкторы — вызовы API, которые возвращают объект, обычно объект, предлагающий методы API
- Методы — вызовы API, которые могут быть выполнены только с объектом, возвращенным конструктором
- allowGestures
- allowMagnificationGestures
- allowNavigationGestures
- allowNewWindows
- allowTextEntry
- alpha
- attachedToolbar
- behavior
- behaviorAsLabels
- bringToFront
- certificateChain
- children
- closeOnEscape
- darkMode
- delete
- deleteOnClose
- estimatedProgress
- evaluateJavaScript
- examineInvalidCertificates
- frame
- goBack
- goForward
- hide
- historyList
- hswindow
- html
- isOnlySecureContent
- isVisible
- level
- loading
- magnification
- navigationCallback
- navigationID
- orderAbove
- orderBelow
- parent
- policyCallback
- privateBrowsing
- reload
- sendToBack
- shadow
- show
- size
- sslCallback
- stopLoading
- title
- topLeft
- transparent
- url
- urlParts
- userAgent
- windowCallback
- windowStyle
- windowTitle
Документация API
Устаревшие
asHSDrawing
| Подпись | hs.webview:asHSDrawing() -> hs.drawing object |
|---|---|
| Тип | Устаревший |
| Описание |
Поскольку использование этого метода может легко привести к сбою, полезные методы из |
| Источник | extensions/webview/webview.lua строка 346 |
asHSWindow
| Подпись | hs.webview:asHSWindow() -> hs.window object |
|---|---|
| Тип | Устаревший |
| Описание |
Возвращает объект hs.window для веб-вьюера, чтобы вы могли использовать методы hs.window на нём. |
| Источник | extensions/webview/webview.lua строка 269 |
setLevel
| Подпись | hs.webview:setLevel(theLevel) -> drawingObject |
|---|---|
| Тип | Устаревший |
| Описание |
Устарело; вместо этого используйте hs.webview:level. |
| Примечания |
|
| Источник | extensions/webview/webview.lua строка 282 |
Константы
certificateOIDs
| Подпись | hs.webview.certificateOIDs[] |
|---|---|
| Тип | Константа |
| Описание |
Таблица общих значений OID, найденных в сертификатах SSL. Сертификаты SSL, предоставленные функции обратного вызова для hs.webview:sslCallback или в результатах hs.webview:certificateChain, используют строки OID в качестве ключей, описывающих свойства сертификата, и эта таблица может быть использована для получения более распространённого имени для ключей, которые вы, скорее всего, увидите. |
| Источник | extensions/webview/libwebview.m строка 2570 |
windowMasks
| Подпись | hs.webview.windowMasks[] |
|---|---|
| Тип | Константа |
| Описание |
Таблица, содержащая допустимые маски для окна веб-вьюера. |
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 2528 |
Функции
titleVisibility
| Подпись | hs.webview:titleVisibility([state]) -> webviewObject | string |
|---|---|
| Тип | Функция |
| Описание |
Получить или установить, отображается ли текст заголовка в окне веб-вьюера. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 2179 |
Конструкторы
новый
| Подпись | hs.webview.new(rect, [preferencesTable], [userContentController]) -> webviewObject |
|---|---|
| Тип | Конструктор |
| Описание |
Создать объект webview и, по желанию, изменить его настройки. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 1798 |
новыйБраузер
| Подпись | hs.webview.newBrowser(rect, [preferencesTable], [userContentController]) -> webviewObject |
|---|---|
| Тип | Конструктор |
| Описание |
Создать объект webviewObject с настройками, типичными для интерактивного веб-браузера. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/webview.lua строка 80 |
Методы
allowGestures
| Подпись | hs.webview:allowGestures([value]) -> webviewObject | current value |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить, будет ли webview реагировать на жесты с трекпада или Magic Mouse. Значение по умолчанию — false. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/webview.lua строка 166 |
allowMagnificationGestures
| Подпись | hs.webview:allowMagnificationGestures([value]) -> webviewObject | current value |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить, будет ли webview реагировать на жесты масштабирования с трекпада или Magic Mouse. Значение по умолчанию — false. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview.m строка 1273 |
allowNewWindows
| Подпись | hs.webview:allowNewWindows([value]) -> webviewObject | current value |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить, разрешено ли webview открывать новые окна любым способом. По умолчанию true. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 1297 |
allowTextEntry
| Подпись | hs.webview:allowTextEntry([value]) -> webviewObject | current value |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить, может ли webview принимать ввод с клавиатуры для заполнения веб-форм. По умолчанию false. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview.m строка 1992 |
alpha
| Подпись | hs.webview:alpha([alpha]) -> webviewObject | currentValue |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить уровень прозрачности окна, содержащего объект hs.webview. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview.m строка 2320 |
Прикреплённая панель инструментов
| Подпись | hs.webview:attachedToolbar([toolbar]) -> webviewObject | currentValue |
|---|---|
| Тип | Метод |
| Описание |
Получить или прикрепить/открепить панель инструментов к/от веб-вью. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/webview.lua строка 107 |
Параметры поведения окна
| Подпись | hs.webview:behavior([behavior]) -> webviewObject | currentValue |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить параметры поведения окна для объекта webview. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 2445 |
Параметры поведения окна (с метками)
| Подпись | hs.webview:behaviorAsLabels(behaviorTable) -> webviewObject | currentValue |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить параметры поведения окна для объекта webview, используя метки, определённые в |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/webview.lua строка 299 |
Вывести вперёд
| Подпись | hs.webview:bringToFront([aboveEverything]) -> webviewObject |
|---|---|
| Тип | Метод |
| Описание |
Выводит объект отрисовки поверх обычных окон. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview.m строка 2284 |
Цепочка сертификатов
| Подпись | hs.webview:certificateChain() -> table | nil |
|---|---|
| Тип | Метод |
| Описание |
Возвращает цепочку сертификатов для последнего подтверждённого навигационного события в веб-вью. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 1006 |
Подчинённые окна
| Подпись | hs.webview:children() -> array |
|---|---|
| Тип | Метод |
| Описание |
Возвращает массив объектов webview, которые были открыты как дочерние окна этого webview. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview.m строка 854 |
Закрытие при Esc
| Подпись | hs.webview:closeOnEscape([flag]) -> webviewObject | current value |
|---|---|
| Тип | Метод |
| Описание |
Если веб-вью можно закрыть, это позволит получить или установить, разрешено ли нажатие клавиши Escape для закрытия окна веб-вью. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 2071 |
Режим тёмной темы
| Подпись | hs.webview:darkMode([state]) -> bool |
|---|---|
| Тип | Метод |
| Описание |
Установить или отобразить, должен ли быть включён режим тёмной темы для окна |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview.m строка 2040 |
Удалить
| Подпись | hs.webview:delete([propagate], [fadeOutTime]) -> none |
|---|---|
| Тип | Метод |
| Описание |
Удаляет объект webview, необязательно предварительно выведя его с анимацией (если он видимый). |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/webview.lua строка 189 |
deleteOnClose
| Signature | hs.webview:deleteOnClose([value]) -> webviewObject | current value |
|---|---|
| Type | Method |
| Description |
Получить или установить, нужно ли веб-вью удалять при закрытии окна. |
| Parameters |
|
| Returns |
|
| Notes |
|
| Source | extensions/webview/libwebview.m строка 2014 |
estimatedProgress
| Signature | hs.webview:estimatedProgress() -> number |
|---|---|
| Type | Method |
| Description |
Возвращает приблизительный процент загруженного ожидаемого контента. Будет равно 1.0, когда весь контент загружен. |
| Parameters |
|
| Returns |
|
| Source | extensions/webview/libwebview.m строка 1135 |
evaluateJavaScript
| Signature | hs.webview:evaluateJavaScript(script, [callback]) -> webviewObject |
|---|---|
| Type | Method |
| Description |
Выполняет JavaScript в контексте текущего веб-вью и, при необходимости, получает его результат или ошибку в функции обратного вызова. |
| Parameters |
|
| Returns |
|
| Source | extensions/webview/libwebview.m строка 1676 |
examineInvalidCertificates
| Signature | hs.webview:examineInvalidCertificates([flag]) -> webviewObject | current value |
|---|---|
| Type | Method |
| Description |
Получить или установить, принимаются ли недействительные сертификаты SSL сервера, одобренные функцией обратного вызова ssl, как действительные для просмотра в веб-вью. |
| Parameters |
|
| Returns |
|
| Notes |
|
| Source | extensions/webview/libwebview.m строка 1325 |
frame
| Signature | hs.webview:frame([rect]) -> webviewObject | currentValue |
|---|---|
| Type | Method |
| Description |
Получить или установить рамку окна веб-вью. |
| Parameters |
|
| Returns |
|
| Notes |
|
| Source | extensions/webview/webview.lua строка 216 |
goBack
| Signature | hs.webview:goBack() -> webviewObject |
|---|---|
| Type | Method |
| Description |
Перейти к предыдущей странице в истории веб-вью, если это возможно. |
| Parameters |
|
| Returns |
|
| Source | extensions/webview/libwebview.m строка 1195 |
goForward
| Signature | hs.webview:goForward() -> webviewObject |
|---|---|
| Type | Method |
| Description |
Перейти к следующей странице в истории веб-вью, если это возможно. |
| Parameters |
|
| Returns |
|
| Source | extensions/webview/libwebview.m строка 1175 |
hide
| Signature | hs.webview:hide([fadeOutTime]) -> webviewObject |
|---|---|
| Type | Method |
| Description |
Скрывает объект веб-вью |
| Parameters |
|
| Returns |
|
| Source | extensions/webview/libwebview.m строка 1966 |
historyList
| Signature | hs.webview:historyList() -> historyTable |
|---|---|
| Type | Method |
| Description |
Возвращает историю URL для текущего веб-вью в виде массива. |
| Parameters |
|
| Returns |
|
| Source | extensions/webview/libwebview.m строка 1653 |
hswindow
| Signature | hs.webview:hswindow() -> hs.window object |
|---|---|
| Type | Method |
| Description |
Возвращает объект hs.window для веб-вью, чтобы вы могли использовать методы hs.window на нём. |
| Parameters |
|
| Returns |
|
| Notes |
|
| Source | extensions/webview/libwebview.m строка 2098 |
html
| Подпись | hs.webview:html(html,[baseURL]) -> webviewObject, navigationIdentifier |
|---|---|
| Тип | Метод |
| Описание |
Отобразить данный HTML в веб-вьюере с необязательным базовым URL для относительных ссылок. |
| Параметры |
|
| Возвращает |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 1421 |
isOnlySecureContent
| Подпись | hs.webview:isOnlySecureContent() -> bool |
|---|---|
| Тип | Метод |
| Описание |
Возвращает булевое значение, указывающее, загружалось ли всё текущее содержимое веб-вьюера по защищённым зашифрованным соединениям. |
| Параметры |
|
| Возвращает |
|
| Источник | extensions/webview/libwebview.m строка 1155 |
isVisible
| Подпись | hs.webview:isVisible() -> boolean |
|---|---|
| Тип | Метод |
| Описание |
Проверяет, видимым ли является окно веб-вьюера. |
| Параметры |
|
| Возвращает |
|
| Источник | extensions/webview/libwebview.m строка 2126 |
level
| Подпись | hs.webview:level([theLevel]) -> drawingObject | currentValue |
|---|---|
| Тип | Метод |
| Описание |
Получение или установка уровня окна |
| Параметры |
|
| Возвращает |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 2250 |
loading
| Подпись | hs.webview:loading() -> boolean |
|---|---|
| Тип | Метод |
| Описание |
Возвращает булевое значение, указывающее, загружает ли веб-вьюер содержимое. |
| Параметры |
|
| Возвращает |
|
| Источник | extensions/webview/libwebview.m строка 1089 |
magnification
| Подпись | hs.webview:magnification([value]) -> webviewObject | current value |
|---|---|
| Тип | Метод |
| Описание |
Получение или установка текущего уровня масштабирования веб-вьюера. По умолчанию 1.0. |
| Параметры |
|
| Возвращает |
|
| Источник | extensions/webview/libwebview.m строка 1387 |
orderAbove
| Подпись | hs.webview:orderAbove([webview2]) -> webviewObject |
|---|---|
| Тип | Метод |
| Описание |
Перемещает объект веб-вьюера над объектом webview2, или все объекты веб-вьюера на том же уровне представления, если webview2 не указан. |
| Параметры |
|
| Возвращает |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 2388 |
orderBelow
| Подпись | hs.webview:orderBelow([webview2]) -> webviewObject |
|---|---|
| Тип | Метод |
| Описание |
Перемещает объект веб-вьюера под объектом webview2, или все объекты веб-вьюера на том же уровне представления, если webview2 не указан. |
| Параметры |
|
| Возвращает |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 2404 |
родитель
| Подпись | hs.webview:parent() -> webviewObject | nil |
|---|---|
| Тип | Метод |
| Описание |
Получает объект родительского веб-вью для вызываемого объекта веб-вью или nil, если у веб-вью нет родителя. |
| Параметры |
|
| Возвращает |
|
| Источник | extensions/webview/libwebview.m строка 877 |
обратный_вызов_политики
| Подпись | hs.webview:policyCallback(fn) -> webviewObject |
|---|---|
| Тип | Метод |
| Описание |
Устанавливает обратный вызов для утверждения или отклонения веб-навигации. |
| Параметры |
|
| Возвращает |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 1503 |
режим_инкогнито
| Подпись | hs.webview:privateBrowsing() -> boolean |
|---|---|
| Тип | Метод |
| Описание |
Возвращает, включен ли в браузере режим инкогнито (т.е. используется неперсистентное хранилище данных). |
| Параметры |
|
| Возвращает |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 819 |
перезагрузка
| Подпись | hs.webview:reload([validate]) -> webviewObject, navigationIdentifier |
|---|---|
| Тип | Метод |
| Описание |
Перезагрузить страницу в веб-вьювере, при необходимости выполнив полную перепроверку с помощью условных проверок кеша. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview.m строка 1215 |
sendToBack
| Подпись | hs.webview:sendToBack() -> webviewObject |
|---|---|
| Тип | Метод |
| Описание |
Разместить объект веб-вьювера за обычными окнами, между обоями рабочего стола и значками. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview.m строка 2302 |
тень
| Подпись | hs.webview:shadow([value]) -> webviewObject | current value |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить, отображается ли у окна веб-вьювера тень. По умолчанию false. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview.m строка 2344 |
показать
| Подпись | hs.webview:show([fadeInTime]) -> webviewObject |
|---|---|
| Тип | Метод |
| Описание |
Отобразить объект веб-вьювера. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview.m строка 1940 |
размер
| Подпись | hs.webview:size([size]) -> webviewObject | currentValue |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить размер окна веб-вьювера. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 1765 |
sslCallback
| Подпись | hs.webview:sslCallback(fn) -> webviewObject |
|---|---|
| Тип | Метод |
| Описание |
Устанавливает обратный вызов для проверки недействительного сертификата SSL и определения, следует ли разрешить исключение. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 1600 |
остановитьЗагрузку
| Подпись | hs.webview:stopLoading() -> webviewObject |
|---|---|
| Тип | Метод |
| Описание |
Остановить загрузку дополнительного контента для веб-вьювера. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 1109 |
заголовок
| Подпись | hs.webview:title() -> title |
|---|---|
| Тип | Метод |
| Описание |
Получить заголовок страницы, отображаемой в веб-вьювере. |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview.m строка 1048 |
верхнийЛевыйУгол
| Подпись | hs.webview:topLeft([point]) -> webviewObject | currentValue |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить координату верхнего левого угла окна веб-вьювера. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 1733 |
прозрачность
| Подпись | hs.webview:transparent([value]) -> webviewObject | current value |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить, является ли фон веб-вью прозрачным. По умолчанию — false. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 1245 |
url
| Подпись | hs.webview:url([URL]) -> webviewObject, navigationIdentifier | url |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить URL для отображения в веб-вью. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 900 |
urlParts
| Подпись | hs.webview:urlParts() -> table |
|---|---|
| Тип | Метод |
| Описание |
Возвращает таблицу ключей, содержащих отдельные компоненты URL для веб-вью. |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/webview.lua строка 252 |
userAgent
| Подпись | hs.webview:userAgent([agent]) -> webviewObject | current value |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить строку user agent веб-вью |
| Параметры |
|
| Возвращаемое значение |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 962 |
windowCallback
| Подпись | hs.webview:windowCallback(fn) -> webviewObject |
|---|---|
| Тип | Метод |
| Описание |
Установить или очистить обратный вызов для обновлений окна веб-вью |
| Параметры |
|
| Возвращаемое значение |
|
| Источник | extensions/webview/libwebview.m строка 2486 |
windowStyle
| Подпись | hs.webview:windowStyle(mask) -> webviewObject | currentMask |
|---|---|
| Тип | Метод |
| Описание |
Получить или установить стиль отображения окна |
| Параметры |
|
| Возвращает |
|
| Источник | extensions/webview/webview.lua строка 123 |
windowTitle
| Подпись | hs.webview:windowTitle([title]) -> webviewObject |
|---|---|
| Тип | Метод |
| Описание |
Устанавливает заголовок для окна webview. |
| Параметры |
|
| Возвращает |
|
| Примечания |
|
| Источник | extensions/webview/libwebview.m строка 2147 |
© 2014–2017 Hammerspoon contributors
Licensed under the MIT License.
https://www.hammerspoon.org/docs/hs.webview.html