我有一个qTip工具提示,其中通过ajax加载了它的内容。内容加载后,我需要调用一个函数someFunction()
$('.element').qtip(
{
content:
{
text: function(event, api)
{
api.elements.content.text('Loading...');
var content = $.ajax(
{
url: 'loadcontent.php',
dataType: 'json'
})
.then(function(result)
{
// Some code for changing result html
return result.html;
}, function(xhr, status, error)
{
api.set('content.text', 'Error');
});
// Calling a function, but it's too early (content is still not in the tooltip)
someFunction();
return content;
}
}
});
说实话,我不确定将someFunction()放在哪里,因此将其称为之后,该内容已添加到工具提示中。更改内容后不会触发任何事件。
答案 0 :(得分:0)
我想出了一个解决方案:
$('.element').qtip(
{
content:
{
text: 'Loading...'
},
events:
{
show: function(event, api)
{
$.ajax(
{
url: 'loadcontent.php',
dataType: 'json'
})
.then(function(result)
{
api.set('content.text', result.html);
someFunction();
}, function(xhr, status, error)
{
api.set('content.text', 'Error');
});
}
}
});