QTip je celkem dobrý plugin, který nahrazuje zobrazení TITLE u prohlížečů. Použití je jednoduché:
$(‘.qtip’).qtip(); — tim nastavim p2kn0 TITLE zobrazení po najetí myší na všechny elementy, které mají CLASS=qtip
Nicméně jsem si dlouho nevěděl rady, jak udělat, aby se qtip aplikoval i na AJAXem nahraný obsah. Protože, když po nahrání obsahu znovu zavolám předešlý příkaz, tak qtip se aplikuje také na již qtipnuté prvky a následně zobrazuje u těchto prvků jakoby dva qtipy přilepené přes sebe.
V api u qtipu existuje příkaz “destroy”, který qtip z prvků zruší a logicky poté lze znovu volat příkaz na jejich znovu nabindování. Jenže qtip má takovou vlastnost, že při jeho spuštění si vytáhne z atributu tagu TITLE to, co má pak zobrazit ve svém okně a pak title smaže. Tedy, když znovu nabinduji qtip tak vlastně již nemají co zobrazit, protože je TITLE prázdné.
Řešení je celkem jednoduché:
$(document).ready(function () {
qtipAll();
});
function qtipAll()
{
$(‘.qtip’).each(function () {
var title = $(this).attr(‘title’);
if ($(this).hasClass(‘qtipAlready’)) return true;
$(this).qtip({text:title, style:”cream”, position: {
corner: {
target: ‘bottomRight’
}
}});
$(this).addClass(‘qtipAlready’);
});
}