我尝试在AJAX请求之后运行的函数中使用jQuery qtip插件。插件不可访问,我以其他方式管理问题(在qtip内容参数中加载ajax),但我仍然很好奇问题是什么。
<script type="text/javascript" src="jquery.qtip-1.0.0.min.js"></script>
//load plugin
<script type="text/javascript">
(function ($) {
jQuery("div.joomimg24_imgct").each(function () {
jQuery(this).find(".joomimg24_txt").hide();
var textField = jQuery(this).find(".joomimg24_txt ul li");
var title = textField.get(0).innerHTML;
var dataDodania = textField.get(2).innerHTML.split(':')[1];
var author = textField.get(1).innerHTML.split(':')[1];
var commnetsC = textField.get(3).innerHTML.split(':')[1];
var link = jQuery(this).find("a").attr('href');
var idNumber = getUrlValue('id', link);
jQuery.ajax({
url: "ajax/getvote.php",
cache: false,
data: "photoid=" + idNumber,
success: function (html) {
ajaxFunc(jQuery(this), html, title, author, commnetsC,
dataDodania);
},
error: function (err, ans) {
alert("error : " + err + " kod : " + ans);
}
});
})
function getUrlValue(name, link) {
[...]
return decodeURIComponent(results[1].replace(/\+/g, " "));
}
function ajaxFunc(curObj, rating, title, author, commnetsC, data) {
if (!jQuery.qtip) {
alert("jQuery plugin not loaded");
return;
}
var newText = "</div>...<div>"
//qtip is not loaded!
curObj.qtip({
content: newText,
show: 'mouseover',
hide: {
when: 'mouseout',
fixed: true
},
position: {
target: 'mouse',
adjust: {
mouse: true
}
},
style: {
height: 'auto',
width: 'auto',
padding: 1,
marginRight: 0,
//20 , aby wyrownac
background: 'url(/templates/upsilum/images/bg-slide.jpg)',
color: 'white',
border: {
width: 2,
radius: 3,
color: 'white'
}
}
})
return curObj;
}
})(jQuery);
</script>
答案 0 :(得分:1)
尝试这样的事情:
jQuery.ajax({
url: "ajax/getvote.php",
cache: false,
data: "photoid=" + idNumber,
success: function(obj, h, t, a, c, d) {
return function (html) {
ajaxFunc(obj, h, t, a, c, d);}
} (jQuery(this), html, title, author, commnetsC),
error: function (err, ans) {
alert("error : " + err + " kod : " + ans);
}
});
如果没有完全包围你正在做的事情,我假设你期望html,title,author等变量在异步调用返回时在范围内,实际上它们可能是不是
我还没有完全测试过,所以它可能在语法上不正确,甚至不能做你想要的。
编辑:它甚至可能不会做我想要它做的事情,但至少它可以为你提供一个起点,让你了解如何在你希望它们的范围内获取变量。