【发布时间】:2015-01-24 03:59:46
【问题描述】:
我正在尝试使用 Waypoints 做一个非常简单的滚动效果,但由于某种原因,我根本无法让 Waypoints 工作。
jQuery (1.7.1) 已正确加载,并在 Waypoints 之前加载。页面上还有其他 jQuery 函数,它们都可以正常工作;例如:
$(document).ready(function() {
$(".form label").addClass("column");
}
Waypoints(waypoints.min.js,版本 1.1.6)也正确加载,在 jQuery 之后。
但无论我做什么,我似乎都无法让 Waypoints 中的任何东西在除 Firefox 之外的任何东西中做出反应。
如果我直接在一个元素上调用 waypoint(),而不检查 document 是否完成加载,那么我不会收到任何错误,但也没有任何反应:
$('.wrapper').waypoint(function() {
alert('You have scrolled to an entry.');
});
– 不提供控制台错误或警告,但也不提醒任何东西(我不希望它会这样,因为脚本放置在创建 .wrapper div 之前)。
如果我等待document 完成,像这样:
$(document).ready(function() {
$('.wrapper').waypoint(function() {
alert('You have scrolled to an entry.');
});
});
——那么它似乎在 Firefox 中有效,但在 Chrome、Opera 或 Safari 中无效。 Safari 的网络控制台告诉我
TypeError: 'undefined' 不是函数(评估
'$('.wrapper').waypoint(function() { alert('You have scrolled to an entry.'); })')
– 我不确定为什么 undefined 现在突然不是一个函数(或者为什么函数现在突然被“设置”为 undefined,以更正确的方式看待它)......
我在任何情况下都不擅长使用 jQuery 或一般的 JavaScript,所以我真的不知道去哪里寻找可能与它发生冲突的东西,或者它为什么对我这样做。
帮助?
【问题讨论】:
标签: jquery function document undefined jquery-waypoints