为什么这个 JavaScript 不起作用?
我正在使用 jQuery 的 qTip 1.0.0-rc3 插件。而且,虽然这不是什么大问题,但我很好奇为什么这会起作用:
$(document).ready(function() {
if (jQuery().qtip) {
$('[data-qtip]').each(function() {
var qTipContent = $(this).attr("data-qtip");
$(this).qtip({ content: qTipContent });
});
}
});
而这确实不起作用:
$(document).ready(function() {
addToolTips();
});
function addToolTips() {
if (jQuery().qtip) {
$('[data-qtip]').each(function() {
var qTipContent = $(this).attr("data-qtip");
$(this).qtip({ content: qTipContent });
});
}
};
前者是在函数内调用的,而后者则不是。这是来自 Firebug 的错误消息:
f(this).data("qtip") is null
我确信这是愚蠢的事情,但我错过了什么?
谢谢。
I'm using the qTip 1.0.0-rc3 plugin for jQuery. And, although it's not a big deal, I am curious as to why this works:
$(document).ready(function() {
if (jQuery().qtip) {
$('[data-qtip]').each(function() {
var qTipContent = $(this).attr("data-qtip");
$(this).qtip({ content: qTipContent });
});
}
});
and this does not work:
$(document).ready(function() {
addToolTips();
});
function addToolTips() {
if (jQuery().qtip) {
$('[data-qtip]').each(function() {
var qTipContent = $(this).attr("data-qtip");
$(this).qtip({ content: qTipContent });
});
}
};
The former is being invoked within a function and the latter is not. Here is the error message from Firebug:
f(this).data("qtip") is null
I'm sure it's something stupid, but what am I missing?
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您给出的代码是在“全局范围”中执行还是由 { 和 } 包装(在另一个函数或其他函数中)?
The code you have given, is it executed in the "global scope" or is it wrapped by { and } (in another function or something)?
哇,我感觉自己很蠢。我刚刚发现我的另一个本地文件存在隐藏冲突。我知道一切看起来都不错!感谢您的帮助。
Wow, I feel stupid. I just found there was a hidden conflict in another one of my local files. I knew everything looked right! Thanks for the help.
尝试将
this
作为参数传递给 addToolTips()。Try passing
this
to the addToolTips() as a parameter.