JavaScript
Haga que los componentes de Bootstrap cobren vida con más de una docena de complementos jQuery personalizados. Inclúyalos fácilmente todos, o uno por uno.
Haga que los componentes de Bootstrap cobren vida con más de una docena de complementos jQuery personalizados. Inclúyalos fácilmente todos, o uno por uno.
Los complementos se pueden incluir individualmente (usando los *.js
archivos individuales de Bootstrap) o todos a la vez (usando bootstrap.js
o minificado bootstrap.min.js
).
Ambos bootstrap.js
y bootstrap.min.js
contienen todos los complementos en un solo archivo. Incluye solo uno.
Algunos complementos y componentes CSS dependen de otros complementos. Si incluye plugins individualmente, asegúrese de comprobar si existen estas dependencias en los documentos. También tenga en cuenta que todos los complementos dependen de jQuery (esto significa que jQuery debe incluirse antes de los archivos del complemento). Consulte nuestrobower.json
para ver qué versiones de jQuery son compatibles.
Puede usar todos los complementos de Bootstrap únicamente a través de la API de marcado sin escribir una sola línea de JavaScript. Esta es la API de primera clase de Bootstrap y debe ser su primera consideración al usar un complemento.
Dicho esto, en algunas situaciones puede ser conveniente desactivar esta función. Por lo tanto, también brindamos la posibilidad de deshabilitar la API de atributos de datos al desvincular todos los eventos en el espacio de nombres del documento con data-api
. Esto se ve así:
Alternativamente, para apuntar a un complemento específico, simplemente incluya el nombre del complemento como un espacio de nombres junto con el espacio de nombres de la API de datos de esta manera:
No utilice atributos de datos de varios complementos en el mismo elemento. Por ejemplo, un botón no puede tener información sobre herramientas y alternar un modal. Para lograr esto, use un elemento envolvente.
También creemos que debería poder usar todos los complementos de Bootstrap únicamente a través de la API de JavaScript. Todas las API públicas son métodos únicos que se pueden encadenar y devuelven la colección sobre la que se actúa.
Todos los métodos deben aceptar un objeto de opciones opcionales, una cadena que apunta a un método en particular o nada (lo que inicia un complemento con el comportamiento predeterminado):
Cada complemento también expone su constructor sin procesar en una Constructor
propiedad: $.fn.popover.Constructor
. Si desea obtener una instancia de complemento en particular, recupérela directamente de un elemento: $('[rel="popover"]').data('popover')
.
Puede cambiar la configuración predeterminada de un complemento modificando el Constructor.DEFAULTS
objeto del complemento:
A veces es necesario usar complementos de Bootstrap con otros marcos de interfaz de usuario. En estas circunstancias, ocasionalmente pueden ocurrir colisiones de espacios de nombres. Si esto sucede, puede llamar .noConflict
al complemento cuyo valor desea revertir.
Bootstrap proporciona eventos personalizados para la mayoría de las acciones únicas de los complementos. Por lo general, estos vienen en forma de infinitivo y participio pasado, donde el infinitivo (p. ej. show
) se activa al comienzo de un evento y su forma de participio pasado (p. ej. shown
) se activa al completar una acción.
A partir de la versión 3.0.0, todos los eventos de Bootstrap tienen espacios de nombres.
Todos los eventos de infinitivo proporcionan preventDefault
funcionalidad. Esto proporciona la capacidad de detener la ejecución de una acción antes de que comience.
La información sobre herramientas y las ventanas emergentes utilizan nuestro desinfectante incorporado para desinfectar las opciones que aceptan HTML.
El valor predeterminado whiteList
es el siguiente:
Si desea agregar nuevos valores a este valor predeterminado whiteList
, puede hacer lo siguiente:
Si desea omitir nuestro desinfectante porque prefiere usar una biblioteca dedicada, por ejemplo , DOMPurify , debe hacer lo siguiente:
document.implementation.createHTMLDocument
En el caso de los navegadores que no son compatibles document.implementation.createHTMLDocument
, como Internet Explorer 8, la función de desinfección integrada devuelve el HTML tal como está.
Si desea realizar una desinfección en este caso, especifique sanitizeFn
y use una biblioteca externa como DOMPurify .
Se puede acceder a la versión de cada uno de los complementos jQuery de Bootstrap a través de la VERSION
propiedad del constructor del complemento. Por ejemplo, para el complemento de información sobre herramientas:
Los complementos de Bootstrap no se recuperan de manera particularmente elegante cuando JavaScript está deshabilitado. Si le importa la experiencia del usuario en este caso, utilícelo <noscript>
para explicar la situación (y cómo volver a habilitar JavaScript) a sus usuarios y/o agregue sus propios recursos alternativos personalizados.
Bootstrap no admite oficialmente bibliotecas de JavaScript de terceros como Prototype o jQuery UI. A pesar .noConflict
de los eventos con espacio de nombres, puede haber problemas de compatibilidad que deba solucionar por su cuenta.
Para efectos de transición simples, incluya transition.js
una vez junto con los otros archivos JS. Si está utilizando el compilado (o minimizado) bootstrap.js
, no es necesario incluirlo, ya está allí.
Transition.js es un ayudante básico para transitionEnd
eventos, así como un emulador de transición CSS. Los otros complementos lo utilizan para verificar la compatibilidad con la transición de CSS y para detectar transiciones colgantes.
Las transiciones se pueden deshabilitar globalmente usando el siguiente fragmento de código de JavaScript, que debe aparecer después de que se haya cargado transition.js
(o bootstrap.js
o bootstrap.min.js
, según sea el caso):
Los modales son mensajes de diálogo simplificados, pero flexibles, con la funcionalidad mínima requerida y valores predeterminados inteligentes.
Asegúrese de no abrir un modal mientras otro aún esté visible. Mostrar más de un modal a la vez requiere un código personalizado.
Siempre intente colocar el código HTML de un modal en una posición de nivel superior en su documento para evitar que otros componentes afecten la apariencia y/o funcionalidad del modal.
Hay algunas advertencias con respecto al uso de modales en dispositivos móviles. Consulte nuestros documentos de soporte del navegador para obtener más información.
Debido a cómo HTML5 define su semántica, el autofocus
atributo HTML no tiene efecto en los modales de Bootstrap. Para lograr el mismo efecto, use JavaScript personalizado:
Un modal representado con encabezado, cuerpo y conjunto de acciones en el pie de página.
Alterne un modal a través de JavaScript haciendo clic en el botón a continuación. Se deslizará hacia abajo y se desvanecerá desde la parte superior de la página.
Asegúrese de agregar role="dialog"
y aria-labelledby="..."
, haciendo referencia al título modal, a .modal
, y role="document"
al .modal-dialog
mismo.
Además, puede dar una descripción de su diálogo modal con aria-describedby
on .modal
.
Incrustar videos de YouTube en modales requiere JavaScript adicional que no está en Bootstrap para detener automáticamente la reproducción y más. Consulte esta útil publicación de desbordamiento de pila para obtener más información.
Los modales tienen dos tamaños opcionales, disponibles a través de clases de modificadores para colocar en un archivo .modal-dialog
.
Para los modales que simplemente aparecen en lugar de aparecer gradualmente, elimine la .fade
clase de su marcado modal.
Para aprovechar el sistema de cuadrícula Bootstrap dentro de un modal, simplemente anide .row
s dentro de .modal-body
y luego use las clases normales del sistema de cuadrícula.
¿Tiene un montón de botones que activan el mismo modal, solo que con contenidos ligeramente diferentes? Use event.relatedTarget
los atributos HTMLdata-*
(posiblemente a través de jQuery ) para variar el contenido del modal según el botón en el que se hizo clic. Consulte los documentos Modal Events para obtener detalles sobre relatedTarget
,
El complemento modal alterna su contenido oculto a pedido, a través de atributos de datos o JavaScript. También se agrega .modal-open
para <body>
anular el comportamiento de desplazamiento predeterminado y genera un .modal-backdrop
para proporcionar un área de clic para descartar los modales mostrados al hacer clic fuera del modal.
Activa un modal sin escribir JavaScript. Establézcalo data-toggle="modal"
en un elemento del controlador, como un botón, junto con data-target="#foo"
o href="#foo"
para apuntar a un modal específico para alternar.
Llame a un modal con id myModal
con una sola línea de JavaScript:
Las opciones se pueden pasar a través de atributos de datos o JavaScript. Para los atributos de datos, agregue el nombre de la opción a data-
, como en data-backdrop=""
.
Nombre | escribe | defecto | descripción |
---|---|---|---|
fondo | booleano o la cadena'static' |
verdadero | Incluye un elemento de fondo modal. Alternativamente, especifique static un fondo que no cierre el modal al hacer clic. |
teclado | booleano | verdadero | Cierra el modal cuando se presiona la tecla escape |
mostrar | booleano | verdadero | Muestra el modal cuando se inicializa. |
remoto | sendero | falso | Esta opción está en desuso desde la versión 3.3.0 y se eliminó en la versión 4. En su lugar, recomendamos usar plantillas del lado del cliente o un marco de enlace de datos, o llamar a jQuery.load usted mismo. Si se proporciona una URL remota, el contenido se cargará una vez mediante el método de jQuery |
.modal(options)
Activa tu contenido como modal. Acepta opciones opcionales object
.
.modal('toggle')
Cambia manualmente un modal. Vuelve a la persona que llama antes de que se haya mostrado u ocultado el modal (es decir, antes de que ocurra el evento shown.bs.modal
o ).hidden.bs.modal
.modal('show')
Abre manualmente un modal. Vuelve a la persona que llama antes de que se haya mostrado realmente el modal (es decir, antes de shown.bs.modal
que ocurra el evento).
.modal('hide')
Oculta manualmente un modal. Vuelve a la persona que llama antes de que se haya ocultado realmente el modal (es decir, antes de hidden.bs.modal
que ocurra el evento).
.modal('handleUpdate')
Reajusta el posicionamiento del modal para contrarrestar una barra de desplazamiento en caso de que aparezca una, lo que haría que el modal salte hacia la izquierda.
Solo es necesario cuando la altura del modal cambia mientras está abierto.
La clase modal de Bootstrap expone algunos eventos para conectarse a la funcionalidad modal.
Todos los eventos modales se activan en el propio modal (es decir, en el <div class="modal">
).
Tipo de evento | Descripción |
---|---|
mostrar.bs.modal | Este evento se activa inmediatamente cuando show se llama al método de instancia. Si es causado por un clic, el elemento en el que se hizo clic está disponible como relatedTarget propiedad del evento. |
mostrado.bs.modal | Este evento se activa cuando el modal se ha hecho visible para el usuario (esperará a que se completen las transiciones de CSS). Si es causado por un clic, el elemento en el que se hizo clic está disponible como relatedTarget propiedad del evento. |
ocultar.bs.modal | Este evento se activa inmediatamente cuando hide se llama al método de instancia. |
oculto.bs.modal | Este evento se activa cuando el modal ha terminado de ocultarse para el usuario (esperará a que se completen las transiciones de CSS). |
cargado.bs.modal | Este evento se activa cuando el modal ha cargado contenido usando la remote opción. |
Agregue menús desplegables a casi cualquier cosa con este complemento simple, incluida la barra de navegación, las pestañas y las píldoras.
A través de atributos de datos o JavaScript, el complemento desplegable alterna el contenido oculto (menús desplegables) al alternar la .open
clase en el elemento de la lista principal.
En los dispositivos móviles, al abrir un menú desplegable se agrega un .dropdown-backdrop
área de toque para cerrar los menús desplegables al tocar fuera del menú, un requisito para la compatibilidad adecuada con iOS. Esto significa que cambiar de un menú desplegable abierto a un menú desplegable diferente requiere un toque adicional en el dispositivo móvil.
Nota: Se data-toggle="dropdown"
confía en el atributo para cerrar los menús desplegables a nivel de aplicación, por lo que es una buena idea usarlo siempre.
Agregue data-toggle="dropdown"
a un enlace o botón para alternar un menú desplegable.
Para mantener las URL intactas con los botones de enlace, use el data-target
atributo en lugar de href="#"
.
Llame a los menús desplegables a través de JavaScript:
data-toggle="dropdown"
todavía se requiereIndependientemente de si llama a su menú desplegable a través de JavaScript o en su lugar usa la API de datos, data-toggle="dropdown"
siempre se requiere que esté presente en el elemento desencadenante del menú desplegable.
Ninguna
$().dropdown('toggle')
Alterna el menú desplegable de una barra de navegación determinada o navegación con pestañas.
Todos los eventos desplegables se activan en el .dropdown-menu
elemento principal de .
Todos los eventos desplegables tienen una relatedTarget
propiedad, cuyo valor es el elemento ancla de alternancia.
Tipo de evento | Descripción |
---|---|
mostrar.bs.desplegable | Este evento se activa inmediatamente cuando se llama al método de instancia show. |
mostrado.bs.desplegable | Este evento se activa cuando el menú desplegable se ha hecho visible para el usuario (esperará a que se completen las transiciones de CSS). |
ocultar.bs.desplegable | Este evento se activa inmediatamente cuando se llama al método de instancia oculta. |
oculto.bs.desplegable | Este evento se activa cuando el menú desplegable ha terminado de ocultarse para el usuario (esperará a que se completen las transiciones de CSS). |
El complemento ScrollSpy es para actualizar automáticamente los objetivos de navegación en función de la posición de desplazamiento. Desplácese por el área debajo de la barra de navegación y observe cómo cambia la clase activa. Los subelementos desplegables también se resaltarán.
Ad leggings keytar, brunch id art party dolor labore. Pitchfork yr enim lo-fi antes de que se agotaran qui. Derechos de bicicleta de la granja a la mesa de Tumblr, lo que sea. Cárdigan anim keffiyeh carles. Cabina de fotos de velit seitan mcsweeney 3 wolf moon irure. Cosby sweater lomo jean shorts, williamsburg hoodie minim qui probablemente no hayas oído hablar de ellos et cardigan trust fund culpa biodiesel wes anderson aesthetic. Nihil tatuado accusamus, cred irony biodiesel keffiyeh artesano ullamco consequat.
Veniam marfa bigote monopatín, adipisicing fugiat velit horca barba. Freegan barba aliqua cupidatat mcsweeney's vero. Cupidatat cuatro loko nisi, ea helvetica nulla carles. Camión de comida de suéter cosby tatuado, vinilo quis non freegan de mcsweeney. Lo-fi wes anderson +1 sastrería. Carles ejercicio no estético quis gentrify. Brooklyn adipisicing cerveza artesanal vice keytar deserunt.
Occaecat commodo aliqua delectus. Fap craft beer deserunt monopatín ea. Lomo bicicleta derechos adipisicing banh mi, velit ea sunt siguiente nivel locavore café de origen único en magna veniam. Vinilo de identificación de alta vida, echo park consequat quis aliquip banh mi pitchfork. Vero VHS est adipisicing. Consectetur nisi DIY bolso de mensajero mínimo. Cred ex in, sostenible delectus consectetur riñonera iphone.
In incididunt echo park, officia deserunt mcsweeney's proident master cleanse thundercats sapiente veniam. Excepteur VHS elit, proident shoreditch +1 biodiesel laborum craft beer. Single-origin coffee wayfarers irure four loko, cupidatat terry richardson master cleanse. Assumenda you probably haven't heard of them art party fanny pack, tattooed nulla cardigan tempor ad. Proident wolf nesciunt sartorial keffiyeh eu banh mi sustainable. Elit wolf voluptate, lo-fi ea portland before they sold out four loko. Locavore enim nostrud mlkshk brooklyn nesciunt.
Ad leggings keytar, brunch id art party dolor labore. Pitchfork yr enim lo-fi before they sold out qui. Tumblr farm-to-table bicycle rights whatever. Anim keffiyeh carles cardigan. Velit seitan mcsweeney's photo booth 3 wolf moon irure. Cosby sweater lomo jean shorts, williamsburg hoodie minim qui you probably haven't heard of them et cardigan trust fund culpa biodiesel wes anderson aesthetic. Nihil tattooed accusamus, cred irony biodiesel keffiyeh artisan ullamco consequat.
Keytar twee blog, bolsa de mensajero culpa marfa lo que sea camión de comida delectus. Sapiente sintetizador id asunción. Locavore sed helvetica cliché ironía, thundercats probablemente no hayas oído hablar de ellos consequat hoodie sin gluten lo-fi fap aliquip. Labore elit placeat antes de que se agotaran, terry richardson proident brunch nesciunt quis cosby sweater pariatur keffiyeh ut helvetica craft. Cardigan cerveza artesana seitán readymade velit. VHS chambray laboris tempor veniam. Anim mollit minim commodo ullamco thundercats.
Los enlaces de la barra de navegación deben tener objetivos de identificación resolubles. Por ejemplo, <a href="#home">home</a>
debe corresponder a algo en el DOM como <div id="home"></div>
.
:visible
objetivo ignoradosLos elementos de destino que no estén :visible
de acuerdo con jQuery se ignorarán y sus elementos de navegación correspondientes nunca se resaltarán.
Independientemente del método de implementación, scrollspy requiere el uso de position: relative;
en el elemento que está espiando. En la mayoría de los casos, este es el <body>
. Al hacer scrollspy en elementos que no sean el <body>
, asegúrese de tener un height
conjunto y overflow-y: scroll;
aplicarlo.
Para agregar fácilmente el comportamiento de scrollspy a la navegación de la barra superior, agregue data-spy="scroll"
el elemento que desea espiar (por lo general, este sería el <body>
). Luego agregue el data-target
atributo con el ID o la clase del elemento principal de cualquier .nav
componente de Bootstrap.
Después de agregar position: relative;
su CSS, llame a scrollspy a través de JavaScript:
.scrollspy('refresh')
Cuando use scrollspy junto con la adición o eliminación de elementos del DOM, deberá llamar al método de actualización de la siguiente manera:
Las opciones se pueden pasar a través de atributos de datos o JavaScript. Para los atributos de datos, agregue el nombre de la opción a data-
, como en data-offset=""
.
Nombre | escribe | defecto | descripción |
---|---|---|---|
compensar | número | 10 | Píxeles para compensar desde la parte superior al calcular la posición de desplazamiento. |
Tipo de evento | Descripción |
---|---|
activar.bs.scrollspy | Este evento se activa cada vez que el scrollspy activa un nuevo elemento. |
Agregue una funcionalidad de pestaña dinámica y rápida para pasar a través de paneles de contenido local, incluso a través de menús desplegables. Las pestañas anidadas no son compatibles.
Denim crudo, probablemente no hayas oído hablar de los shorts de jean Austin. Nesciunt tofu stumptown aliqua, retro synth master cleanse. Bigote cliché temporal, williamsburg carles vegan helvetica. Reprehenderit carnicero retro keffiyeh sintetizador atrapasueños. Cosby sweater eu banh mi, qui irure terry richardson ex squid. Aliquip placeat salvia cillum iphone. Seitan aliquip quis cardigan ropa americana, carnicero voluptate nisi qui.
Food truck fixie locavore, accusamus mcsweeney's marfa nulla single-origin coffee squid. Exercitation +1 labore velit, blog sartorial PBR leggings next level wes anderson artisan four loko farm-to-table craft beer twee. Qui photo booth letterpress, commodo enim craft beer mlkshk aliquip jean shorts ullamco ad vinyl cillum PBR. Homo nostrud organic, assumenda labore aesthetic magna delectus mollit. Keytar helvetica VHS salvia yr, vero magna velit sapiente labore stumptown. Vegan fanny pack odio cillum wes anderson 8-bit, sustainable jean shorts beard ut DIY ethical culpa terry richardson biodiesel. Art party scenester stumptown, tumblr butcher vero sint qui sapiente accusamus tattooed echo park.
Etsy mixtape wayfarers, ethical wes anderson tofu before they sold out mcsweeney's organic lomo retro fanny pack lo-fi farm-to-table readymade. Messenger bag gentrify pitchfork tattooed craft beer, iphone skateboard locavore carles etsy salvia banksy hoodie helvetica. DIY synth PBR banksy irony. Leggings gentrify squid 8-bit cred pitchfork. Williamsburg banh mi whatever gluten-free, carles pitchfork biodiesel fixie etsy retro mlkshk vice blog. Scenester cred you probably haven't heard of them, vinyl craft beer blog stumptown. Pitchfork sustainable tofu synth chambray yr.
Trust fund seitan letterpress, keytar raw denim keffiyeh etsy art party before they sold out master cleanse gluten-free squid scenester freegan cosby sweater. Fanny pack portland seitan DIY, art party locavore wolf cliche high life echo park Austin. Cred vinyl keffiyeh DIY salvia PBR, banh mi before they sold out farm-to-table VHS viral locavore cosby sweater. Lomo wolf viral, mustache readymade thundercats keffiyeh craft beer marfa ethical. Wolf salvia freegan, sartorial keffiyeh echo park vegan.
Este complemento amplía el componente de navegación con pestañas para agregar áreas con pestañas.
Habilite las pestañas que se pueden tabular a través de JavaScript (cada pestaña debe activarse individualmente):
Puede activar pestañas individuales de varias maneras:
Puede activar una pestaña o una píldora de navegación sin escribir JavaScript simplemente especificando data-toggle="tab"
o data-toggle="pill"
en un elemento. Agregar las clases nav
y a la pestaña aplicará el estilo de la pestaña Bootstrap , mientras que agregar las clases y aplicará el estilo de la píldora .nav-tabs
ul
nav
nav-pills
Para hacer que las pestañas se desvanezcan, agréguelas .fade
a cada .tab-pane
. El primer panel de pestañas también debe tener .in
para hacer visible el contenido inicial.
$().tab
Activa un elemento de pestaña y un contenedor de contenido. La pestaña debe tener un data-target
o un href
nodo contenedor en el DOM. En los ejemplos anteriores, las pestañas son las <a>
s con data-toggle="tab"
atributos.
.tab('show')
Selecciona la pestaña dada y muestra su contenido asociado. Cualquier otra pestaña que se haya seleccionado previamente se deselecciona y su contenido asociado se oculta. Vuelve a la persona que llama antes de que se haya mostrado realmente el panel de pestañas (es decir, antes de shown.bs.tab
que ocurra el evento).
Al mostrar una nueva pestaña, los eventos se activan en el siguiente orden:
hide.bs.tab
(en la pestaña activa actual)show.bs.tab
(en la pestaña que se mostrará)hidden.bs.tab
(en la pestaña activa anterior, la misma que para el hide.bs.tab
evento)shown.bs.tab
(en la pestaña recién activa recién mostrada, la misma que para el show.bs.tab
evento)Si ninguna pestaña ya estaba activa, los eventos hide.bs.tab
y hidden.bs.tab
no se activarán.
Tipo de evento | Descripción |
---|---|
mostrar.bs.tab | Este evento se activa al mostrar la pestaña, pero antes de que se muestre la nueva pestaña. Use event.target y event.relatedTarget para apuntar a la pestaña activa y la pestaña activa anterior (si está disponible) respectivamente. |
mostrado.bs.tab | Este evento se activa en la presentación de pestañas después de que se haya mostrado una pestaña. Use event.target y event.relatedTarget para apuntar a la pestaña activa y la pestaña activa anterior (si está disponible) respectivamente. |
ocultar.bs.tab | Este evento se activa cuando se va a mostrar una nueva pestaña (y, por lo tanto, se va a ocultar la pestaña activa anterior). Use event.target y event.relatedTarget para apuntar a la pestaña activa actual y la nueva pestaña que pronto estará activa, respectivamente. |
oculto.bs.tab | Este evento se activa después de que se muestra una nueva pestaña (y, por lo tanto, se oculta la pestaña activa anterior). Use event.target y event.relatedTarget para apuntar a la pestaña activa anterior y la nueva pestaña activa, respectivamente. |
Inspirado en el excelente complemento jQuery.tipsy escrito por Jason Frame; La información sobre herramientas es una versión actualizada, que no se basa en imágenes, utiliza CSS3 para animaciones y atributos de datos para el almacenamiento local de títulos.
La información sobre herramientas con títulos de longitud cero nunca se muestra.
Pase el cursor sobre los enlaces a continuación para ver información sobre herramientas:
Pantalones ajustados al siguiente nivel keffiyeh , probablemente no hayas oído hablar de ellos. Bolso bandolera vegano tipo fotomatón con barba en denim crudo stumptown. El seitán de la granja a la mesa, la ropa americana de 8 bits de quinoa sostenible fixie de mcsweeney tiene un cambray de vinilo terry richardson. Beard stumptown, cárdigans banh mi lomo thundercats. Tofu biodiesel williamsburg marfa, cuatro loko mcsweeney's cleanse vegan chambray. Un artesano realmente irónico sea cual sea el keytar , scenester de la granja a la mesa .
Hay cuatro opciones disponibles: alineación superior, derecha, inferior e izquierda.
Por motivos de rendimiento, las API de información sobre herramientas y ventana emergente son opcionales, lo que significa que debe inicializarlas usted mismo .
Una forma de inicializar toda la información sobre herramientas en una página sería seleccionarla por su data-toggle
atributo:
El complemento de información sobre herramientas genera contenido y marcado a pedido y, de forma predeterminada, coloca información sobre herramientas después de su elemento desencadenante.
Active la información sobre herramientas a través de JavaScript:
El marcado requerido para una información sobre herramientas es solo un data
atributo y title
en el elemento HTML que desea tener una información sobre herramientas. El marcado generado de una información sobre herramientas es bastante simple, aunque requiere una posición (de forma predeterminada, establecida top
por el complemento).
A veces desea agregar información sobre herramientas a un hipervínculo que envuelve varias líneas. El comportamiento predeterminado del complemento de información sobre herramientas es centrarlo horizontal y verticalmente. Agregue white-space: nowrap;
a sus anclas para evitar esto.
Al usar información sobre herramientas en elementos dentro de a .btn-group
o an .input-group
, o en elementos relacionados con tablas ( <td>
, <th>
, <tr>
, <thead>
, <tbody>
, <tfoot>
), deberá especificar la opción container: 'body'
(documentada a continuación) para evitar efectos secundarios no deseados (como que el elemento se ensanche y/ o perder sus esquinas redondeadas cuando se activa la información sobre herramientas).
Para los usuarios que navegan con un teclado y, en particular, los usuarios de tecnologías de asistencia, solo debe agregar información sobre herramientas a los elementos que se pueden enfocar con el teclado, como enlaces, controles de formulario o cualquier elemento arbitrario con un tabindex="0"
atributo.
Para agregar información sobre herramientas a un elemento disabled
o .disabled
, coloque el elemento dentro de <div>
y aplique la información sobre herramientas en <div>
su lugar.
Las opciones se pueden pasar a través de atributos de datos o JavaScript. Para los atributos de datos, agregue el nombre de la opción a data-
, como en data-animation=""
.
Tenga en cuenta que, por motivos de seguridad sanitize
, las opciones sanitizeFn
y whiteList
no se pueden proporcionar mediante atributos de datos.
Nombre | Escribe | Defecto | Descripción |
---|---|---|---|
animación | booleano | verdadero | Aplicar una transición de fundido CSS a la información sobre herramientas |
envase | cadena | falso | falso | Agrega la información sobre herramientas a un elemento específico. Ejemplo: |
demora | número | objeto | 0 | Retraso en mostrar y ocultar la información sobre herramientas (ms): no se aplica al tipo de disparo manual Si se proporciona un número, la demora se aplica tanto para ocultar/mostrar La estructura del objeto es: |
html | booleano | falso | Inserte HTML en la información sobre herramientas. Si es falso, se text usará el método de jQuery para insertar contenido en el DOM. Use texto si le preocupan los ataques XSS. |
colocación | cadena | función | 'parte superior' | Cómo colocar la información sobre herramientas - arriba | abajo | izquierda | derecho | auto. Cuando se usa una función para determinar la ubicación, se llama con el nodo DOM de información sobre herramientas como primer argumento y el nodo DOM del elemento desencadenante como segundo. El |
selector | cuerda | falso | Si se proporciona un selector, los objetos de información sobre herramientas se delegarán a los objetivos especificados. En la práctica, esto también se usa para aplicar información sobre herramientas a elementos DOM agregados dinámicamente ( jQuery.on soporte). Vea esto y un ejemplo informativo . |
modelo | cuerda | '<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>' |
HTML base para usar al crear la información sobre herramientas. La información sobre herramientas
El elemento contenedor más externo debe tener la |
título | cadena | función | '' | Valor de título predeterminado si Si se proporciona una función, se llamará con su |
generar | cuerda | 'enfoque flotante' | Cómo se activa la información sobre herramientas: haga clic en | flotar | enfoque | manual. Puede pasar varios disparadores; sepáralos con un espacio. manual no se puede combinar con ningún otro disparador. |
mirador | cadena | objeto | función | { selector: 'cuerpo', relleno: 0 } | Mantiene la información sobre herramientas dentro de los límites de este elemento. Ejemplo: Si se proporciona una función, se llama con el nodo DOM del elemento desencadenante como su único argumento. El |
desinfectar | booleano | verdadero | Activa o desactiva la desinfección. Si está activado 'template' , 'content' y 'title' las opciones se desinfectarán. |
lista blanca | objeto | Valor por defecto | Objeto que contiene atributos y etiquetas permitidos |
desinfectarFn | nulo | función | nulo | Aquí puede proporcionar su propia función de desinfección. Esto puede ser útil si prefiere usar una biblioteca dedicada para realizar la desinfección. |
Las opciones para información sobre herramientas individuales se pueden especificar alternativamente mediante el uso de atributos de datos, como se explicó anteriormente.
$().tooltip(options)
Adjunta un controlador de información sobre herramientas a una colección de elementos.
.tooltip('show')
Revela la información sobre herramientas de un elemento. Vuelve a la persona que llama antes de que se muestre la información sobre herramientas (es decir, antes de shown.bs.tooltip
que ocurra el evento). Esto se considera una activación "manual" de la información sobre herramientas. La información sobre herramientas con títulos de longitud cero nunca se muestra.
.tooltip('hide')
Oculta la información sobre herramientas de un elemento. Vuelve a la persona que llama antes de que la información sobre herramientas se haya ocultado (es decir, antes de hidden.bs.tooltip
que ocurra el evento). Esto se considera una activación "manual" de la información sobre herramientas.
.tooltip('toggle')
Alterna la información sobre herramientas de un elemento. Vuelve a la persona que llama antes de que se muestre u oculte la información sobre herramientas (es decir, antes de que ocurra el evento shown.bs.tooltip
o ). hidden.bs.tooltip
Esto se considera una activación "manual" de la información sobre herramientas.
.tooltip('destroy')
Oculta y destruye la información sobre herramientas de un elemento. La información sobre herramientas que utiliza la delegación (que se crea con la selector
opción ) no se puede destruir individualmente en los elementos desencadenantes descendientes.
Tipo de evento | Descripción |
---|---|
mostrar.bs.información sobre herramientas | Este evento se activa inmediatamente cuando show se llama al método de instancia. |
se muestra.bs.tooltip | Este evento se activa cuando la información sobre herramientas se hace visible para el usuario (esperará a que se completen las transiciones de CSS). |
ocultar.bs.información sobre herramientas | Este evento se activa inmediatamente cuando hide se llama al método de instancia. |
oculto.bs.tooltip | Este evento se activa cuando la información sobre herramientas ha terminado de ocultarse para el usuario (esperará a que se completen las transiciones de CSS). |
insertado.bs.tooltip | Este evento se activa después del show.bs.tooltip evento cuando la plantilla de información sobre herramientas se ha agregado al DOM. |
Agregue pequeñas superposiciones de contenido, como las del iPad, a cualquier elemento para albergar información secundaria.
Los popovers cuyo título y contenido tienen una longitud cero nunca se muestran.
Los popovers requieren que el complemento de información sobre herramientas se incluya en su versión de Bootstrap.
Por motivos de rendimiento, las API de información sobre herramientas y ventana emergente son opcionales, lo que significa que debe inicializarlas usted mismo .
Una forma de inicializar todos los popovers en una página sería seleccionarlos por su data-toggle
atributo:
Cuando utilice popovers en elementos dentro de a .btn-group
o an .input-group
, o en elementos relacionados con tablas ( <td>
, <th>
, <tr>
, <thead>
, <tbody>
, <tfoot>
), deberá especificar la opción container: 'body'
(documentada a continuación) para evitar efectos secundarios no deseados (como que el elemento se ensanche y/ o perder sus esquinas redondeadas cuando se activa el popover).
Para agregar un popover a un elemento disabled
o .disabled
, coloque el elemento dentro de a <div>
y aplique el popover en <div>
su lugar.
A veces desea agregar una ventana emergente a un hipervínculo que envuelve varias líneas. El comportamiento predeterminado del complemento popover es centrarlo horizontal y verticalmente. Agregue white-space: nowrap;
a sus anclas para evitar esto.
Hay cuatro opciones disponibles: alineación superior, derecha, inferior e izquierda.
Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
Use el focus
disparador para descartar popovers en el próximo clic que haga el usuario.
Para un comportamiento adecuado entre navegadores y plataformas, debe usar la <a>
etiqueta, no la <button>
etiqueta, y también debe incluir los atributos role="button"
y .tabindex
Habilitar ventanas emergentes a través de JavaScript:
Las opciones se pueden pasar a través de atributos de datos o JavaScript. Para los atributos de datos, agregue el nombre de la opción a data-
, como en data-animation=""
.
Tenga en cuenta que, por motivos de seguridad sanitize
, las opciones sanitizeFn
y whiteList
no se pueden proporcionar mediante atributos de datos.
Nombre | Escribe | Defecto | Descripción |
---|---|---|---|
animación | booleano | verdadero | Aplicar una transición de fundido CSS al popover |
envase | cadena | falso | falso | Agrega el popover a un elemento específico. Ejemplo: |
contenido | cadena | función | '' | Valor de contenido predeterminado si el Si se proporciona una función, se llamará con su |
demora | número | objeto | 0 | Retraso en mostrar y ocultar el popover (ms) - no se aplica al tipo de activación manual Si se proporciona un número, la demora se aplica tanto para ocultar/mostrar La estructura del objeto es: |
html | booleano | falso | Inserte HTML en la ventana emergente. Si es falso, se text usará el método de jQuery para insertar contenido en el DOM. Use texto si le preocupan los ataques XSS. |
colocación | cadena | función | 'Correcto' | Cómo colocar el popover - arriba | abajo | izquierda | derecho | auto. Cuando se usa una función para determinar la ubicación, se llama con el nodo DOM emergente como primer argumento y el nodo DOM del elemento desencadenante como segundo. El |
selector | cuerda | falso | Si se proporciona un selector, los objetos emergentes se delegarán a los destinos especificados. En la práctica, esto se usa para permitir que se agreguen popovers al contenido HTML dinámico. Vea esto y un ejemplo informativo . |
modelo | cuerda | '<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>' |
HTML base para usar al crear el popover. Los popover Los popover
El elemento contenedor más externo debe tener la |
título | cadena | función | '' | Valor de título predeterminado si Si se proporciona una función, se llamará con su |
generar | cuerda | 'hacer clic' | Cómo se activa el popover: haga clic en | flotar | enfoque | manual. Puede pasar varios disparadores; sepáralos con un espacio. manual no se puede combinar con ningún otro disparador. |
mirador | cadena | objeto | función | { selector: 'cuerpo', relleno: 0 } | Mantiene el popover dentro de los límites de este elemento. Ejemplo: Si se proporciona una función, se llama con el nodo DOM del elemento desencadenante como su único argumento. El |
desinfectar | booleano | verdadero | Activa o desactiva la desinfección. Si está activado 'template' , 'content' y 'title' las opciones se desinfectarán. |
lista blanca | objeto | Valor por defecto | Objeto que contiene atributos y etiquetas permitidos |
desinfectarFn | nulo | función | nulo | Aquí puede proporcionar su propia función de desinfección. Esto puede ser útil si prefiere usar una biblioteca dedicada para realizar la desinfección. |
Las opciones para ventanas emergentes individuales se pueden especificar alternativamente mediante el uso de atributos de datos, como se explicó anteriormente.
$().popover(options)
Inicializa popovers para una colección de elementos.
.popover('show')
Revela el popover de un elemento. Vuelve a la persona que llama antes de que se haya mostrado realmente el popover (es decir, antes de shown.bs.popover
que ocurra el evento). Esto se considera una activación "manual" del popover. Los popovers cuyo título y contenido tienen una longitud cero nunca se muestran.
.popover('hide')
Oculta el popover de un elemento. Vuelve a la persona que llama antes de que se haya ocultado el popover (es decir, antes de hidden.bs.popover
que ocurra el evento). Esto se considera una activación "manual" del popover.
.popover('toggle')
Alterna el popover de un elemento. Vuelve a la persona que llama antes de que se muestre u oculte el popover (es decir, antes de que ocurra el evento shown.bs.popover
o ). hidden.bs.popover
Esto se considera una activación "manual" del popover.
.popover('destroy')
Oculta y destruye el popover de un elemento. Los popovers que usan delegación (que se crean usando la selector
opción ) no se pueden destruir individualmente en elementos desencadenantes descendientes.
Tipo de evento | Descripción |
---|---|
mostrar.bs.popover | Este evento se activa inmediatamente cuando show se llama al método de instancia. |
mostrado.bs.popover | Este evento se activa cuando el popover se hace visible para el usuario (esperará a que se completen las transiciones de CSS). |
ocultar.bs.popover | Este evento se activa inmediatamente cuando hide se llama al método de instancia. |
oculto.bs.popover | Este evento se activa cuando el popover ha terminado de ocultarse para el usuario (esperará a que se completen las transiciones de CSS). |
insertado.bs.popover | Este evento se activa después del show.bs.popover evento cuando la plantilla de ventana emergente se ha agregado al DOM. |
Agregue la funcionalidad de descartar a todos los mensajes de alerta con este complemento.
Al usar un .close
botón, debe ser el primer elemento secundario de .alert-dismissible
y ningún contenido de texto puede aparecer antes que él en el marcado.
Cambia esto y aquello e inténtalo de nuevo. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum.
Simplemente agréguelo data-dismiss="alert"
a su botón de cierre para dar automáticamente una funcionalidad de cierre de alerta. Cerrar una alerta la elimina del DOM.
Para que sus alertas usen animación al cerrar, asegúrese de que ya tengan aplicadas las clases .fade
y ..in
$().alert()
Hace que una alerta escuche eventos de clic en elementos descendientes que tienen el data-dismiss="alert"
atributo. (No es necesario cuando se usa la inicialización automática de la API de datos).
$().alert('close')
Cierra una alerta eliminándola del DOM. Si las clases .fade
y .in
están presentes en el elemento, la alerta desaparecerá antes de que se elimine.
El complemento de alerta de Bootstrap expone algunos eventos para conectarse a la funcionalidad de alerta.
Tipo de evento | Descripción |
---|---|
cerrar.bs.alert | Este evento se activa inmediatamente cuando close se llama al método de instancia. |
cerrado.bs.alerta | Este evento se activa cuando se ha cerrado la alerta (esperará a que se completen las transiciones de CSS). |
Haz más con los botones. Controle los estados de los botones o cree grupos de botones para más componentes, como barras de herramientas.
Firefox persiste en los estados de control de formularios (deshabilitado y verificado) a lo largo de las cargas de página . Una solución para esto es usar autocomplete="off"
. Consulte el error de Mozilla #654072 .
Agregar data-loading-text="Loading..."
para usar un estado de carga en un botón.
Esta característica está obsoleta desde la versión 3.3.5 y se eliminó en la versión 4.
Por el bien de esta demostración, estamos usando data-loading-text
y $().button('loading')
, pero ese no es el único estado que puede usar. Vea más sobre esto a continuación en la $().button(string)
documentación .
Agregue data-toggle="button"
para activar alternar en un solo botón.
.active
yaria-pressed="true"
Para los botones preactivados, debe agregar la .active
clase y el aria-pressed="true"
atributo a button
usted mismo.
Agregue data-toggle="buttons"
a una .btn-group
casilla de verificación contenedora o entradas de radio para habilitar la alternancia en sus respectivos estilos.
.active
Para las opciones preseleccionadas, debe agregar la .active
clase a la entrada label
usted mismo.
Si el estado marcado de un botón de casilla de verificación se actualiza sin disparar un click
evento en el botón (por ejemplo, mediante <input type="reset">
o configurando la checked
propiedad de la entrada), deberá alternar la .active
clase en la entrada label
usted mismo.
$().button('toggle')
Cambia el estado de inserción. Da al botón la apariencia de que ha sido activado.
$().button('reset')
Restablece el estado del botón: cambia el texto al texto original. Este método es asíncrono y regresa antes de que se haya completado realmente el restablecimiento.
$().button(string)
Cambia el texto a cualquier estado de texto definido por datos.
Complemento flexible que utiliza un puñado de clases para un comportamiento de alternancia fácil.
Collapse requiere que el complemento de transiciones se incluya en su versión de Bootstrap.
Haga clic en los botones de abajo para mostrar y ocultar otro elemento a través de cambios de clase:
.collapse
oculta contenido.collapsing
se aplica durante las transiciones.collapse.in
muestra contenidoPuede usar un enlace con el href
atributo o un botón con el data-target
atributo. En ambos casos, data-toggle="collapse"
se requiere el.
Extienda el comportamiento de contracción predeterminado para crear un acordeón con el componente del panel.
También es posible intercambiar .panel-body
s con .list-group
s.
Asegúrese de agregar aria-expanded
al elemento de control. Este atributo define explícitamente el estado actual del elemento contraíble para lectores de pantalla y tecnologías de asistencia similares. Si el elemento contraíble está cerrado de forma predeterminada, debería tener un valor de aria-expanded="false"
. Si configuró el elemento contraíble para que se abra de manera predeterminada usando la in
clase, configurearia-expanded="true"
en el control en su lugar. El complemento alternará automáticamente este atributo en función de si el elemento plegable se ha abierto o cerrado.
Además, si su elemento de control apunta a un solo elemento contraíble, es decir, el data-target
atributo apunta a un id
selector, puede agregar un aria-controls
atributo adicional al elemento de control, que contenga el id
del elemento contraíble. Los lectores de pantalla modernos y las tecnologías de asistencia similares hacen uso de este atributo para proporcionar a los usuarios accesos directos adicionales para navegar directamente al propio elemento contraíble.
El complemento de colapso utiliza algunas clases para manejar el trabajo pesado:
.collapse
oculta el contenido.collapse.in
muestra el contenido.collapsing
se agrega cuando comienza la transición y se elimina cuando finalizaEstas clases se pueden encontrar en component-animations.less
.
Simplemente agregue data-toggle="collapse"
y data-target
al elemento para asignar automáticamente el control de un elemento contraíble. El data-target
atributo acepta un selector de CSS para aplicar el colapso. Asegúrese de agregar la clase collapse
al elemento contraíble. Si desea que se abra de forma predeterminada, agregue la clase adicional in
.
Para agregar una administración de grupos similar a un acordeón a un control contraíble, agregue el atributo de datos data-parent="#selector"
. Consulte la demostración para ver esto en acción.
Habilitar manualmente con:
Las opciones se pueden pasar a través de atributos de datos o JavaScript. Para los atributos de datos, agregue el nombre de la opción a data-
, como en data-parent=""
.
Nombre | escribe | defecto | descripción |
---|---|---|---|
padre | selector | falso | Si se proporciona un selector, todos los elementos contraíbles bajo el padre especificado se cerrarán cuando se muestre este elemento contraíble. (similar al comportamiento tradicional del acordeón; esto depende de la panel clase) |
palanca | booleano | verdadero | Alterna el elemento contraíble en la invocación |
.collapse(options)
Activa tu contenido como un elemento colapsable. Acepta opciones opcionales object
.
.collapse('toggle')
Cambia un elemento colapsable a mostrado u oculto. Vuelve a la persona que llama antes de que el elemento contraíble se haya mostrado u ocultado (es decir, antes de que ocurra el evento shown.bs.collapse
o ).hidden.bs.collapse
.collapse('show')
Muestra un elemento plegable. Vuelve a la persona que llama antes de que se haya mostrado realmente el elemento colapsable (es decir, antes de shown.bs.collapse
que ocurra el evento).
.collapse('hide')
Oculta un elemento contraíble. Vuelve a la persona que llama antes de que el elemento contraíble se haya ocultado (es decir, antes de hidden.bs.collapse
que ocurra el evento).
La clase de colapso de Bootstrap expone algunos eventos para conectarse a la funcionalidad de colapso.
Tipo de evento | Descripción |
---|---|
show.bs.collapse | Este evento se activa inmediatamente cuando show se llama al método de instancia. |
mostrado.bs.collapse | Este evento se activa cuando un elemento colapsado se hace visible para el usuario (esperará a que se completen las transiciones CSS). |
ocultar.bs.collapse | Este evento se activa inmediatamente cuando hide se llama al método. |
oculto.bs.collapse | Este evento se activa cuando un elemento de colapso se ha ocultado al usuario (esperará a que se completen las transiciones de CSS). |
Un componente de presentación de diapositivas para recorrer los elementos, como un carrusel. Los carruseles anidados no son compatibles.
El componente de carrusel generalmente no cumple con los estándares de accesibilidad. Si necesita cumplir, considere otras opciones para presentar su contenido.
Bootstrap usa exclusivamente CSS3 para sus animaciones, pero Internet Explorer 8 y 9 no admiten las propiedades CSS necesarias. Por lo tanto, no hay animaciones de transición de diapositivas al usar estos navegadores. Hemos decidido intencionalmente no incluir respaldos basados en jQuery para las transiciones.
La .active
clase debe agregarse a una de las diapositivas. De lo contrario, el carrusel no será visible.
Las clases .glyphicon .glyphicon-chevron-left
y .glyphicon .glyphicon-chevron-right
no son necesariamente necesarias para los controles. Bootstrap proporciona .icon-prev
y .icon-next
como alternativas simples de Unicode.
Agregue subtítulos a sus diapositivas fácilmente con el .carousel-caption
elemento dentro de cualquier archivo .item
. Coloque casi cualquier HTML opcional allí y se alineará y formateará automáticamente.
Los carruseles requieren el uso de un id
en el contenedor más externo (el .carousel
) para que los controles del carrusel funcionen correctamente. Al agregar varios carruseles, o al cambiar un carrusel id
, asegúrese de actualizar los controles relevantes.
Utilice atributos de datos para controlar fácilmente la posición del carrusel. data-slide
acepta las palabras clave prev
o next
, que altera la posición de la diapositiva en relación con su posición actual. Alternativamente, use data-slide-to
para pasar un índice de diapositiva sin procesar al carrusel data-slide-to="2"
, que cambia la posición de la diapositiva a un índice particular que comienza con 0
.
El data-ride="carousel"
atributo se usa para marcar un carrusel como animado a partir de la carga de la página. No se puede usar en combinación con la inicialización explícita de JavaScript (redundante e innecesaria) del mismo carrusel.
Carrusel de llamadas manualmente con:
Las opciones se pueden pasar a través de atributos de datos o JavaScript. Para los atributos de datos, agregue el nombre de la opción a data-
, como en data-interval=""
.
Nombre | escribe | defecto | descripción |
---|---|---|---|
intervalo | número | 5000 | La cantidad de tiempo de retraso entre el ciclo automático de un elemento. Si es falso, el carrusel no realizará un ciclo automáticamente. |
pausa | cadena | nulo | "flotar" | Si se establece en "hover" , detiene el ciclo del carrusel mouseenter y reanuda el ciclo del carrusel mouseleave . Si se establece en null , pasar el cursor sobre el carrusel no lo pausará. |
envolver | booleano | verdadero | Si el carrusel debe circular continuamente o tener paradas bruscas. |
teclado | booleano | verdadero | Si el carrusel debe reaccionar a los eventos del teclado. |
.carousel(options)
Inicializa el carrusel con opciones opcionales object
y comienza a recorrer los elementos.
.carousel('cycle')
Recorre los elementos del carrusel de izquierda a derecha.
.carousel('pause')
Evita que el carrusel pase de un elemento a otro.
.carousel(number)
Cicla el carrusel a un marco en particular (basado en 0, similar a una matriz).
.carousel('prev')
Pasa al elemento anterior.
.carousel('next')
Pasa al elemento siguiente.
La clase de carrusel de Bootstrap expone dos eventos para conectarse a la funcionalidad del carrusel.
Ambos eventos tienen las siguientes propiedades adicionales:
direction
: La dirección en la que se desliza el carrusel (ya sea "left"
o "right"
).relatedTarget
: El elemento DOM que se desliza en su lugar como el elemento activo.Todos los eventos del carrusel se activan en el propio carrusel (es decir, en el <div class="carousel">
).
Tipo de evento | Descripción |
---|---|
diapositiva.bs.carrusel | Este evento se activa inmediatamente cuando slide se invoca el método de instancia. |
deslizado.bs.carrusel | Este evento se activa cuando el carrusel ha completado su transición de diapositivas. |
El complemento de afijo se activa position: fixed;
y desactiva, emulando el efecto encontrado con position: sticky;
. La subnavegación a la derecha es una demostración en vivo del complemento de afijo.
Use el complemento de afijo a través de atributos de datos o manualmente con su propio JavaScript. En ambas situaciones, debe proporcionar CSS para el posicionamiento y el ancho de su contenido adjunto.
Nota: No use el complemento de afijo en un elemento contenido en un elemento posicionado relativamente, como una columna empujada o empujada, debido a un error de representación de Safari .
El complemento de afijo alterna entre tres clases, cada una de las cuales representa un estado particular: .affix
, .affix-top
y .affix-bottom
. Debe proporcionar los estilos, con la excepción de position: fixed;
on .affix
, para estas clases usted mismo (independientemente de este complemento) para manejar las posiciones reales.
Así es como funciona el complemento de afijo:
.affix-top
para indicar que el elemento está en su posición más alta. En este punto no se requiere posicionamiento CSS..affix
reemplaza .affix-top
y establece position: fixed;
(proporcionado por el CSS de Bootstrap)..affix
con .affix-bottom
. Dado que las compensaciones son opcionales, configurar uno requiere que configure el CSS apropiado. En este caso, agregue position: absolute;
cuando sea necesario. El complemento utiliza el atributo de datos o la opción de JavaScript para determinar dónde colocar el elemento desde allí.Siga los pasos anteriores para configurar su CSS para cualquiera de las siguientes opciones de uso.
Para agregar fácilmente un comportamiento de afijo a cualquier elemento, simplemente agréguelo data-spy="affix"
al elemento que desea espiar. Use compensaciones para definir cuándo alternar la fijación de un elemento.
Llame al complemento de afijo a través de JavaScript:
Las opciones se pueden pasar a través de atributos de datos o JavaScript. Para los atributos de datos, agregue el nombre de la opción a data-
, como en data-offset-top="200"
.
Nombre | escribe | defecto | descripción |
---|---|---|---|
compensar | número | función | objeto | 10 | Píxeles para compensar desde la pantalla al calcular la posición de desplazamiento. Si se proporciona un solo número, la compensación se aplicará en las direcciones superior e inferior. Para proporcionar un desplazamiento inferior y superior único, simplemente proporcione un objeto offset: { top: 10 } o offset: { top: 10, bottom: 5 } . Utilice una función cuando necesite calcular dinámicamente un desplazamiento. |
objetivo | seleccionador | nodo | elemento jQuery | el window objeto |
Especifica el elemento de destino del afijo. |
.affix(options)
Activa tu contenido como contenido adjunto. Acepta opciones opcionales object
.
.affix('checkPosition')
Vuelve a calcular el estado del afijo en función de las dimensiones, la posición y la posición de desplazamiento de los elementos relevantes. Las clases .affix
, .affix-top
y .affix-bottom
se agregan o eliminan del contenido adjunto de acuerdo con el nuevo estado. Es necesario llamar a este método cada vez que se cambien las dimensiones del contenido adjunto o el elemento de destino, para garantizar el posicionamiento correcto del contenido adjunto.
El complemento de afijo de Bootstrap expone algunos eventos para conectarse a la funcionalidad de afijo.
Tipo de evento | Descripción |
---|---|
afijo.bs.afijo | Este evento se activa inmediatamente antes de que se haya fijado el elemento. |
afijo.bs.afijo | Este evento se activa después de que se haya fijado el elemento. |
afijo-superior.bs.afijo | Este evento se activa inmediatamente antes de que el elemento se haya colocado en la parte superior. |
afijo-top.bs.affix | Este evento se activa después de que el elemento se haya colocado en la parte superior. |
afijo-fondo.bs.afijo | Este evento se activa inmediatamente antes de que el elemento se haya colocado en la parte inferior. |
adjunto-fondo.bs.affix | Este evento se activa después de que el elemento se haya colocado en la parte inferior. |