Ho giocato con questo problema oggi, Ho pensato di condividere i miei risultati ...
Utilizzando l'esempio da jQueryUI tooltip, styling personalizzato e contenuti personalizzati
volevo avere un ibrido di questi due. Volevo essere in grado di avere un popover e non un tooltip, e il contenuto doveva essere HTML personalizzato. Quindi nessuno stato di passaggio del mouse, ma invece uno stato di clic.
mio JS è come questo:
$(function() {
$(document).tooltip({
items: "input",
content: function() {
return $('.myPopover').html();
},
position: {
my: "center bottom-20",
at: "center top",
using: function(position, feedback) {
$(this).css(position);
$("<div>")
.addClass("arrow")
.addClass(feedback.vertical)
.addClass(feedback.horizontal)
.appendTo(this);
}
}
});
$('.fireTip').click(function() {
if(!$(this).hasClass('open')) {
$('#age').trigger('mouseover');
$(this).addClass('open');
} else {
$('#age').trigger('mouseout');
$(this).removeClass('open');
}
})
});
La prima parte è più o meno una copia diretta del codice di esempio dal sito UI con l'aggiunta di oggetti e contenuti nel blocco tooltip.
mio HTML:
<p>
<input class='hidden' id="age" />
<a href=# class="fireTip">Click me ya bastard</a>
</p>
<div class="myPopover hidden">
<h3>Hi Sten this is the div</h3>
</div>
Bacially abbiamo ingannare stato hover quando si clicca il tag di ancoraggio (classe fireTip), il tag input che contiene la descrizione comando ha invocato uno stato mouseover, sparando in tal modo il tooltip e conservazione in su finché si vuole ... la CSS è sul violino ...
in ogni modo, qui è un violino per vedere l'interazione un po 'meglio: http://jsfiddle.net/AK7pv/
fonte
2013-08-26 10:30:38
Grazie, ma io preferisco utilizzare il widget tooltip, perché ciò manterrebbe il mio codice semplice. Tuttavia, il tuo suggerimento è ancora un piano di backup se non può essere fatto con il widget di jQueryUI. Quindi, qualcuno? – besq
Ho migliorato e aggiornato la risposta per future.readers.Anche se la risposta precedente stava funzionando ma quello stava usando un'altra libreria personalizzata – Garry