jQuery Tipsy: простое решение для перезаписи?
Как я могу изменить направление с "n" на "w", не теряя тестовый текст и не клонируя его?
$(".tipsy").live('mouseover',function() {
$(this).tipsy({gravity: "n", html: true});
$(this).tipsy("show");
});
$(".tipsy").live("click",function() {
$('.tipsy').remove();
$(this).tipsy({gravity: 'w', html: true});
$(this).tipsy("show");
});
<div class="tipsy" title='<u>test link</u>'>TestTestTestTestTestTestTestTestTestTestTest</div>
Вот скрипка: http://jsfiddle.net/nQvmw/23/
1 ответ:
Как видно на главной странице плагина tipsy вы можете передать функцию, которая возвращает направление в качестве опции gravity:
$(el).tipsy({gravity: function(){return Math.random()>.5 ? 'w' : 'n';}
На основе этой функции можно легко создать функцию, которая возвращает различные направления для различных действий мыши (mouseenter, click...):
var flag = false; function gravity(){ return flag ? 'n' : 'w'; }; $(".tipsy") .live('mouseover',function(){ flag = true; $(this).tipsy("show"); }) .live("click",function() { flag = false; $(this).tipsy("show"); }) .tipsy({ gravity: gravity, html: true });
Вот рабочая демонстрация