Documentación de Tampermonkey
Tampermonkey Documentation
@doc https://www.tampermonkey.net/documentation.php
Tabla de contenido
@nombre
@name el nombre del script
@ espacio de nombres
@namespace El espacio de nombres del script
@versión
La versión de la secuencia de comandos utilizada para buscar actualizaciones.
@autor
El autor del guion
@descripción
Breve descripción importante
@homepage, @homepageURL, @website y @source
La página de inicio del autor en la página 'Opciones' utilizada para vincular desde el nombre del script a una página determinada. Tenga en cuenta que si la etiqueta @namespace comienza con 'http: //', su contenido también se utilizará para esta operación.
@icon, @iconURL y @defaulticon
Los guiones con puntuaciones bajas se mostrarán en la lista de administración de guiones.
@ icon64 y @ icon64URL
Icono de secuencia de comandos 64 * 64 Si se proporciona esta etiqueta, pero se proporciona un icono, la imagen del icono se ampliará en algunos lugares de la página de opciones
@updateURL
Actualice la dirección del script. Nota: solo se actualizará la etiqueta @version
@downloadURL
Defina la URL desde la que se descargará el script cuando se detecte una actualización. Si el valor es ninguno, no se realizará ninguna comprobación de actualización.
@supportURL
Definir direcciones para problemas de informes de usuarios y asistencia personal
@incluir
|_+_|La página donde debe ejecutarse la secuencia de comandos puede utilizar coincidencias regulares. Permitir varias etiquetas
Tenga en cuenta que @include no admite el parámetro de hash de la URL, puede visitar aquí para obtener más información Haga clic para obtener más información
@partido
El mismo significado que la etiqueta @include, puede hacer clic aquí para obtener más información
Nota: La instrucción '' aún no se admite y 'http *: //' también se acepta en la parte del esquema.
Permitir múltiples instancias de etiquetas.
@excluir
Excluya las URL, incluso si están incluidas en @include o @match. Permitir varias etiquetas
@exigir
|_+_|Señale un archivo de secuencia de comandos que se cargará y ejecutará antes de que se ejecute la secuencia de comandos
Nota: ¡El script cargado a través de @require y su declaración de 'uso estricto' pueden afectar el modo estricto del script de usuario!
Para obtener detalles sobre cómo garantizar la integridad, consulte la sección de integridad de los sub-recursos. Permitir múltiples instancias de etiquetas.
@recurso
|_+_|La precarga se puede pasar a través del script
// @include http://www.tampermonkey.net/* // @include http://* // @include https://* // @include *
con// @require https://code.jquery.com/jquery-2.1.4.min.js // @require https://code.jquery.com/jquery-2.1.3.min.js#sha256=23456... // @require https://code.jquery.com/jquery-2.1.2.min.js#md5=34567...,sha256=6789...
Recursos visitados
@conectar
Esta etiqueta define el dominio (sin dominio de nivel superior), incluido
GM_getresourceurl
Subdominio recuperado
// @conectar
pueden ser los siguientes valores
- El dominio puede ser:
GM_getresourcetext
(Se pueden permitir subdominios) - Subdominios como:
// @resource icon1 http://www.tampermonkey.net/favicon.ico // @resource icon2 /images/icon.png // @resource html http://www.tampermonkey.net/index.html // @resource xml http://www.tampermonkey.net/crx/tampermonkey.xml // @resource SRIsecured1 http://www.tampermonkey.net/favicon.ico#md5=123434... // @resource SRIsecured2 http://www.tampermonkey.net/favicon.ico#md5=123434...sha256=234234...
GM_xmlhttpRequest
: Muestra el dominio donde se está ejecutando el script actualmentetampermokey.net
Tener permiso para acceder a localhostsafari.tampermokey.net
Enlace a la dirección IP- |_+_|
@correr a
Defina el momento en que se inyecta el guión. A diferencia de otros procesos de script, @ run-at define el primer tiempo posible para que se ejecute el script.
Esto significa que los scripts marcados con @require pueden ejecutarse después de que se haya cargado el documento, porque se necesita mucho tiempo para obtener los scripts necesarios. En cualquier caso, todos los eventos domnodeinserted y domcontentloaded que ocurran después de un tiempo de inyección determinado se almacenarán en caché y se pasarán al script durante la inyección.
|_+_|@conceder
@grant se utiliza para establecer la lista blanca de funciones GM_ *. La función GM_ * son algunos objetos de ventana inseguros y algunas funciones de ventana influyentes. Si no hay una etiqueta @grant, TM adivinará lo que necesita el script
|_+_|@noframes
Esta etiqueta indica que el script se ejecuta en la página principal, no en iframes.
@desenvolver
Esta etiqueta se ignora porque no la necesita en Google Chrome.
@nocompat
En la actualidad, tm intenta detectar si la secuencia de comandos está escrita en el conocimiento de google chrome / chromium buscando la etiqueta @match, pero no todas las secuencias de comandos la usan. Es por eso que tm admite esta etiqueta para deshabilitar todas las optimizaciones necesarias para ejecutar scripts escritos para firefox / greasemonkey. Para mantener esta etiqueta extensible, puede agregar un nombre de navegador que el script pueda procesar.
Interfaz de programación de aplicaciones (API avanzada)
unsafeWindow
El objeto unsafeWindow proporciona acceso a las funciones y variables js de la página
Integridad de los subrecursos
Puede utilizar el componente hash de la URL marcada con @resource y @require para este propósito.
|_+_|TM native admite hash MD5 como respaldo, todos los demás (SHA-1, SHA-256, SHA-384 y SHA-512) dependen de window.crypto. Si se proporcionan varios hash (separados por comas o punto y coma), TM utilizará el último hash admitido actualmente. Si el contenido del recurso externo no coincide con el hash seleccionado, el recurso no se pasará al script del usuario. Todos los hash deben codificarse en formato hexadecimal o base64.
GM_addStyle (css)
Agregue estilo al documento y devuelva el nodo inyectado
GM_deleteValue (nombre)
Eliminar 'nombre' del almacenamiento
GM_listValues ()
Lista de todos los nombres almacenados
GM_addValueChangeListener (nombre, función (nombre, valor_antiguo, valor_nuevo, remoto) {})
Agregue un oyente de eventos de cambio en el almacenamiento y devuelva el ID del oyente
'Nombre' es la variable observada
La variable 'remota' de la función de devolución de llamada muestra si este valor se modificó desde otra instancia de pestaña (verdadero) o en esta instancia de script (falso).
Por lo tanto, los scripts de diferentes pestañas del navegador pueden usar esta función para comunicarse entre sí.
Puede utilizar esta API para comunicarse con pestañas de diferentes navegadores
GM_removeValueChangeListener (listener_id)
Eliminar un evento de cambio de oyente por el ID de oyente
GM_setValue (nombre, valor)
Establecer el valor de 'nombre' en almacenamiento
GM_getValue (nombre, valor predeterminado)
Obtenga el valor de 'nombre' del almacenamiento
GM_log (mensaje)
Imprimir registro en la consola
GM_getResourceText (nombre)
Obtenga el contenido de la etiqueta @resource reservada en la parte superior del script
GM_getResourceURL (nombre)
Obtenga el encodeURI base64 de la etiqueta @resource definida en la parte superior del script
GM_registerMenuCommand (nombre, fn, clave de acceso)
Registre un comando de menú que pueda mostrar TM en la página, cuando se ejecute este script, y devuelva el comando de menú id
Significa que puede registrar un ming que muestra directamente el menú de TM
GM_unregisterMenuCommand (menuCmdId)
Anular el registro de un comando de menú basado en el ID del comando de menú (proporcionado a través de GM_registerMenuCommand)
GM_openInTab (url, opciones), GM_openInTab (url, loadInBackground)
Use la URL del parámetro para abrir una nueva pestaña, las opciones pueden ser los siguientes valores
- activo determina si la nueva pestaña está enfocada, y enfocado significa que se muestra directamente
- insertar Insertar una nueva pestaña después de la pestaña actual
- setParent reenfoca la pestaña actual después de cerrar la pestaña
Además, se agregarán nuevas pestañas. loadinbackground tiene el significado opuesto a activo y se agregó para lograr la compatibilidad con Greasemonkey 3.x. Si no se especifica 'Actividad' o 'Cargar fondo', la pestaña no se enfocará. Esta función devuelve un objeto con la función cerrar, el oyente encerrado y un indicador llamado cerrado.
GM_xmlhttpRequest (detalles)
Cree una xmlHttpRequest.
Los atributos de los detalles de los parámetros son:
- El método puede ser GET, HEAD, POST
- url url solicitada
- encabezados como: user-agent, referer,… (algunos encabezados especiales no son compatibles con los navegadores Safari y Android)
- datos Algunas cadenas tienen solicitudes de publicación enviadas en el pasado
- binario dicho modo binario, escriba enviar datos
- timeout timeout
- el contexto se agrega al objeto en el objeto de respuesta
- responseType puede ser arraybuffer, blob, json
- overrideMimeType El tipo de MIME solicitado
- anónimo no necesita enviar cookies en la solicitud, consulte el comentario de recuperación para obtener más detalles
- fetch (beta) usa un fetch para reemplazar la solicitud xhr. En Chrome, esto hará que xhr.abort, details.timeout y xhr.onprogress no funcionen, y hará que xhr.onreadystatechange reciba solo eventos readystate 4
- nombre de usuario nombre de usuario autorizado
- contraseña usuario autorizado contraseña
- onabort La función de devolución de llamada que se ejecuta cuando se interrumpe la solicitud
- La función de devolución de llamada que debe ejecutarse cuando la solicitud de onerror termina con un error
- onloadstart La función de devolución de llamada que se ejecuta cuando la solicitud comienza a cargarse
- onprogress La función de devolución de llamada que se ejecuta cuando cambia el estado de la solicitud
- onreadystatechange El cambio de estado listo solicitado es la función de devolución de llamada que se ejecuta
- función de devolución de llamada ontimeout ejecutada después del tiempo de espera
- onload La función de devolución de llamada que se ejecuta cuando se devuelve la solicitud. Sus varios parámetros son los siguientes:
- finalUrl: la URL final después de todos los redireccionamientos desde donde se cargaron los datos
- readyState - el estado listo
- status - el estado de la solicitud
- statusText: el texto de estado de la solicitud
- responseHeaders: los encabezados de respuesta de la solicitud
- respuesta: los datos de respuesta como objeto si se estableció details.responseType
- responseXML: los datos de respuesta como documento XML
- responseText: los datos de respuesta como una cadena simple
El objeto devuelto contiene las siguientes propiedades:
- abort-función para cancelar la solicitud
Nota: el atributo síncrono no es compatible
Importante: Si desea utilizar este método, vaya a la etiqueta @connectb para obtener más información.
GM_download (detalles), GM_download (url, nombre)
Utilice el recurso de descarga en el disco local
Los atributos de los detalles:
- url-la URL del recurso
- nombre-nombre del archivo, por razones de seguridad, la extensión del archivo debe estar en la lista blanca en la página de parámetros de TM
- encabezados de solicitud de conjunto de encabezados como GM_xmlhttpRequest
- saveAs-boolean value, muestra una ventana emergente guardada
- onerror descarga la función de devolución de llamada que terminó con falla
- función de devolución de llamada ejecutada después de que se completa la carga
- Función de devolución de llamada en progreso que cambia durante la descarga
- función de devolución de llamada de ejecución de tiempo de espera de descarga de ontimeout
Ahora los parámetros de un error en el archivo son los siguientes: - error-causa del error
- not_enabled: el usuario no ha habilitado la función de descarga
- not_whitelisted: el tipo de archivo descargado no está en la lista blanca
- not_permitted-user ha abierto el permiso de descarga, pero no el permiso de descarga
- not_supported: el atributo de descarga no es compatible debido al navegador o la versión
- not_succeeded: la descarga no se inició o falló. los detalles pueden proporcionar más información
- detalles-detalles del error
Devuelve un objeto que contiene las siguientes propiedades
- abort-función para cancelar la descarga
Según el modo de descarga, gm_u info proporciona un atributo denominado modo de descarga, que se establece en uno de los siguientes valores: nativo, deshabilitado o navegador.
GM_getTab (devolución de llamada)
Obtenga un objeto persistente siempre que la pestaña esté abierta.
GM_saveTab (pestaña)
Guarde el objeto de pestaña para volver a abrir, después de cerrar la página
GM_getTabs (devolución de llamada)
Obtenga todos los objetos de pestaña como un hash para comunicarse con otras instancias de script.
GM_notification (detalles, ondone), GM_notification (texto, título, imagen, onclick)
Muestre una notificación de escritorio H5 o resalte la pestaña actual
atributos de detalles:
- texto-el problema con la notificación
- title-el título de la notificación
- imagen-imagen
- resaltar un logotipo booleano, si resaltar la pestaña
- silencioso-si un booleano toca música
- tiempo de espera para la visualización de notificaciones 0 significa mostrar siempre
- ondone: la función que se ejecuta cuando se cierra la notificación, ya sea que se haga clic en ella o que se agote el tiempo de espera
- función onclick activada por notificación de clic
La función de todos los parámetros es exactamente la misma que su propiedad de información detallada correspondiente.
GM_setClipboard (datos, información)
Copie los datos en la mesa de trabajo, la información del parámetro puede ser un objeto como {tipo: 'texto', tipo mime: 'texto / plano'}, o una cadena de texto, html
GM_info
Obtenga información sobre el script y la MT, la estructura de datos es la siguiente
tampermonkey admite esta forma de almacenar metadatos. TM intenta detectar automáticamente si el script necesita habilitar esta opción de compatibilidad.