我使用jQuery插件Waypoints 来处理滚动操作。jQuery - 自动输入焦点时,滚动击中某些元素
我想要实现的是将焦点设置在视口中某个部分的第一个输入元素上,并在向下滚动时将焦点移至下一个相应部分的输入。而且,当滚回到上面的第一部分时,它应该将焦点设置回第一部分的输入。
以下是我使用上述插件的实际工作设置。 不幸的是,我无法真正将插件启动并运行在我的JS Fiddle中。
此代码块在设置页面加载焦点和向下滚动时将焦点更改为目标输入方面起作用 但滚动回顶部部分不会将焦点设置回来。
(function($) {
var firstInput = $('section').find('input[type=text]').filter(':visible:first');
if (firstInput != null) {
firstInput.focus();
}
$('section').waypoint(function() {
var getFocus = $(this).find('input[type=text]').filter(':visible:first');
getFocus.focus();
});
$('section').waypoint(function() {
var getFocus = $(this).find('input[type=text]').filter(':visible:first');
getFocus.focus();
}, {
offset: function() {
return -$(this).height();
}
});
});
这是我JS Fiddle 不具有该插件的一部分。
只要有人能解释他们应该如何在正常jQuery 如果不熟悉这个插件。
只需添加插件作为外部资源:http://jsfiddle.net/LX262/ – mplungjan
@mplungjan嗨,这是一个插件的CDN?我不知道CDN可用于相当不重要的插件。 –
不,这是来自作者示例页面的js文件 – mplungjan