2
我希望我的工具提示可以通過點擊打開和關閉。我試圖與API切換功能試驗,但我遇到了問題,你可以在這裏看到:qTip2工具提示立即消失
http://jsfiddle.net/jplew/HK7w3/1/
$(document).ready(function() {
$('area').each(function() {
var tooltips = $(this).qtip({
content: {
button: true,
text: function(event, api) {
$.ajax({
url: api.elements.target.attr('link') // Use href attribute as URL
})
.then(function(content) {
// Set the tooltip content upon successful retrieval
api.set('content.text', content);
}, function(xhr, status, error) {
// Upon failure... set the tooltip content to error
api.set('content.text', status + ': ' + error);
});
return 'Loading...'; // Set some initial text
}
},
position: {
viewport: $(window),
my: 'center center',
at: 'center center',
target: 'mouse',
adjust: { x: 0, y: 0 }
},
show: {
event: 'click',
delay: 0,
},
hide: {
event: 'click',
fixed: true,
delay: 0,
},
style: 'qtip-rasa-apt',
});
var api = tooltips.qtip('api');
$(this).click(function(event) {
api.toggle(true, event); // Pass event as second parameter!
})
});
});
注:我使用AJAX來加載提示內容,所以跨域訪問控制防止加載實際圖像。這裏是我的服務器上正確加載AJAX的同一件事:http://rasamritakunj.com/qtip。
無論jsfiddle中缺少的內容,即使點擊「error:」工具提示,問題也是顯而易見的。一些提示仍然存在,但點擊幾次後,它們就會閃爍。我認爲問題是,只要我顯示()工具提示,我正在同時做一個hide()。
任何人有任何想法如何解決這個問題?謝謝!
一種解決方法:把'延遲:10'中的 「隱藏」 選項http://jsfiddle.net/HK7w3/8/ – Sga
@Sga:謝謝,試過了,但問題仍然存在。它的作品幾次點擊,然後繼續立即眨眼 –
我認爲你必須刪除最後一部分:'var api = ...',以避免切換 – Sga