javascript - una - vincular facebook con twitter
¿Función de devolución de llamada después de que se haya creado información sobre herramientas/ventana emergente con el inicio de Twitter? (4)
Esta respuesta se publicó solo para aclarar las cosas según lo solicitado por el fabricante y contiene el código del comentario de Márquez.
Primero, extienda la ventana emergente de Bootstrap para manejar una opción de callback
.
var tmp = $.fn.popover.Constructor.prototype.show;
$.fn.popover.Constructor.prototype.show = function() {
tmp.call(this); if (this.options.callback) {
this.options.callback();
}
}
Luego agrega una propiedad de callback
a su objeto de opción y la asigna con una función anónima.
$(''#popover-foo'').popover({
content: ''Hello world'',
callback: function () {
alert(''Hello'');
}
});
Quiero manipular una información sobre herramientas o una ventana emergente después de que se haya creado con el programa de arranque de Twitter. Por lo que sé, no hay una forma de hacer esto.
$(''#selector'').popover({
placement: ''bottom''
});
Por ejemplo, digamos que quiero mover la descripción de la herramienta creada 5px y 5px a la izquierda desde su ubicación calculada. ¿Alguna idea sobre la mejor manera de hacer esto?
Esto es lo que me gustaría hacer:
$(''#selector'').popover({
placement: ''bottom'',
callback: function(){
alert(''Awesome'');
}
});
Otra solución:
- Utilice los escuchas show.bs.popover o shown.bs.popover
En la devolución de llamada, los datos de eventos ''mostrados'' se vinculan al objetivo que contiene el ID de ventana emergente, desde aquí puede hacer el resto
$(''body'') .popover(options) .on(''shown.bs.popover'', function(shownEvent) { update_popover_data(shownEvent); });
Función de devolución de llamada:
function update_popover_data(shownEvent) {
var id = $(shownEvent.target).attr(''aria-describedby'');
$(''#''+id).html(''Your New Popover Content'');
}
Tal vez esto no estaba disponible cuando se dieron las respuestas anteriores, pero a partir de 2016, puede adjuntar eventos a ventanas emergentes (funcionalmente equivalente a una devolución de llamada).
p.ej
$(''#myPopover'').on(''shown.bs.popover'', function () {
// do something…
})
Los eventos incluyen:
- show.bs.popover
- shown.bs.popover
- hide.bs.popover
- hidden.bs.popover
- insertado.bs.popover
Ref. Bootstrap docs
Trabajos para información sobre herramientas:
var tmp = $.fn.tooltip.Constructor.prototype.show;
$.fn.tooltip.Constructor.prototype.show = function () {
tmp.call(this);
if (this.options.callback) {
this.options.callback();
}
}
this.$(''#selector'').tooltip({
placement: ''top'',
callback: function() {
alert(''hello'')
}
});