并不是一个JS人 - 所以任何人都可以解释为什么这不起作用?我想从一个简单的AJAX脚本中调用一个脚本中的预定义函数 - 我只是想让它通过AJAX调用带入页面的div的内容来调用qtip功能。
谢谢, ħ
SCript 1 - AJAX加载器
if(myHttpRequest.readyState==4)
data.innerHTML = myHttpRequest.responseText;
qtip_me('.div_to_act_on');
}
脚本2 - 主要JQuery脚本
$(document).ready(function() {
function qtip_me(a) {
$(a).each(function() {
$(this).qtip({
content: {'showme'},
position: {corner: {tooltip: 'bottomLeft', target: 'topRight'}},
style: {
width: 300,
padding: 5,
background: '#A2D959',
color: 'black',
textAlign: 'center',
border: {
width: 7,
radius: 5,
color: '#A2D959'
},
tip: 'bottomLeft',
name: 'dark' // Inherit the rest of the attributes from the preset dark style
}
});
});
};
});
答案 0 :(得分:2)
可能是这样定义的函数不在范围内。 尝试像这样定义函数:
qtip_me = function(a) {}
这样就可以了。
或者正如其他答案所说,不要在文档中定义函数。
答案 1 :(得分:2)
在词法范围内声明qtip_me函数,该函数不能从它的封闭函数外部访问。
答案 2 :(得分:1)
您不需要在$(document).ready块中嵌套qtip_me()函数。它是一个通用的函数调用,而不是依赖于完全加载的文档的函数调用。这是因为假设您在加载文档后发生了之前的AJAX请求(可能是错误的假设)。