要实现滚动条滚到底部自动加载后续内容到内容到底部的功能,用jQuery非常方便的,只要知道什么时候滚动到了底部就好办了。
- $(document).scrollTop() //获取垂直滚动条到顶部的距离
- $(document).height()//整个网页的高度
- $(window).height()//浏览器窗口的高度
文档的高度减去窗口的高度就是滚动条可滚动的范围了。那么
- $(window).scrollTop() + $(window).height() >= $(document).height()
滚动条就到底部了,我们只要在$(window).scroll()中判断和加载内容就可以了:
- $(function(){
- $(window).scroll(function() {
- //当内容滚动到底部时加载新的内容
- if ($(this).scrollTop() + $(window).height() + 20 >= $(document).height() && $(this).scrollTop() > 20) {
- //当前要加载的页码
- LoadPage(currPage);
- }
- });
- });
代码中的20是我设置的偏移量,如果底部有其它内容,要在看到底部内容时就加载,而不是必须滚动到底部,就需要这个偏移量 了,$(this).scrollTop() > 20是为了不让页面还没有滚动就触发加载;至于页面要加载的内容当然是AJAX处理了,都在LoadPage()中处理就行了!
新浪微博网页自动底部加载的效果很酷吧?其实这种叫做“无限滚动的翻页技术”,当你页面滑到列表底部时候无需点击就自动加载更多的内容。
其实有很多jQuery的插件都已经实现了这个效果,我们来介绍几个吧!
1、jQuery ScrollPagination
jQuery ScrollPagination plugin 是一个jQuery 实现的支持无限滚动加载数据的插件。
地址:http://andersonferminiano.com/jqueryscrollpagination/
他的demo下载:http://andersonferminiano.com/jqueryscrollpagination/jqueryscrollpagination.zip
实例代码:
- $(function(){
- $('#content').scrollPagination({
- 'contentPage': 'democontent.html', // the url you are fetching the results
- 'contentData': {}, // these are the variables you can pass to the request, for example: children().size() to know which page you are
- 'scrollTarget': $(window), // who gonna scroll? in this example, the full window
- 'heightOffset': 10, // it gonna request when scroll is 10 pixels before the page ends
- 'beforeLoad': function(){ // before load function, you can display a preloader div
- $('#loading').fadeIn();
- },
- 'afterLoad': function(elementsLoaded){ // after loading content, you can use this function to animate your new elements
- $('#loading').fadeOut();
- var i = 0;
- $(elementsLoaded).fadeInWithDelay();
- if ($('#content').children().size() > 100){ // if more than 100 results already loaded, then stop pagination (only for testing)
- $('#nomoreresults').fadeIn();
- $('#content').stopScrollPagination();
- }
- }
- });
- // code for fade in element by element
- $.fn.fadeInWithDelay = function(){
- var delay = 0;
- return this.each(function(){
- $(this).delay(delay).animate({opacity:1}, 200);
- delay += 100;
- });
- };
- });
2、 jQuery Screw
Screw (scroll + view) 是一个 jQuery 插件当用户滚动页面的时候加载内容,是一个无限滚动翻页的插件。
官方地址:https://github.com/jasonlau/jQuery-Screw
3. AutoBrowse jQuery Plugin
Autobrowse jQuery Plugin 插件在用户滚动页面的时候自动通过 Ajax 加载更多内容,使用浏览器内置缓存。
相关推荐
【标题】"仿新浪微博显示头像jquery插件"是一个基于jQuery的JavaScript库,设计用于在网页上以类似于新浪微博的方式展示用户头像。这种插件在社交媒体应用、论坛、博客或其他需要展示用户形象的网站中非常实用,能够...
《新浪微博表情jQuery插件——jquery.sinaEmotion-1.0详解》 在网页开发中,为了提升用户体验,经常会引入各种各样的JavaScript插件。其中,“新浪微博表情jQuery插件”(jquery.sinaEmotion-1.0)是一个专门用于...
总的来说,“jQuery高仿新浪微博图片显示插件”是一个强大的工具,它集成了延迟加载、预加载和响应式设计等多种技术,旨在提升网页中图片展示的效率和质量。对于需要构建类似功能的开发者而言,无论是学习其设计思路...
表情功能的实现虽说不难,但却比较繁琐,首先要了解新浪微博开放平台的表情API,然后通过某种方式调用,如果通过网页后台代码直接读取储存到JavaScript变量中,又会拖慢网页加载速度,如果采用AJAX读取,又要解决...
【jQuery仿新浪微博鼠标滚动到底部加载内容】是一个常见的网页动态加载技术,主要应用于社交媒体和新闻网站,以提高用户体验。在用户滚动页面至底部时,无需手动点击“加载更多”按钮,内容会自动分页加载,这被称为...
这个名为“模仿-闪动-新浪微博发布框”的项目,显然旨在复制新浪微博发布框的功能和视觉效果,并且添加了一些额外的特性,如颜色变化和闪动效果。下面将详细讨论相关知识点。 首先,我们关注的是“html附带代码”这...
总结来说,"capacityFixed"插件是一个结合了JavaScript/jQuery编程、CSS3样式设计、DOM操作、事件监听、数据绑定和API调用的前端组件,主要用于实现类似新浪微博新消息提示的用户体验。其核心价值在于提供了一个可...
以下我们将深入探讨如何使用jQuery来实现类似新浪微博的动态加载功能。 一、jQuery基础知识 1. jQuery选择器:jQuery提供了丰富的选择器,如ID选择器(#id)、类选择器(.class)和元素选择器(tag),使得我们...
jQuery qtip浮动提示框插件新浪微博图片或文字ajax提示
这种技术模仿了社交媒体平台如新浪微博和Pinterest的浏览体验,让用户在滚动页面时能无缝地加载更多内容,而无需点击分页按钮。这种功能大大提升了用户浏览的流畅性,减少了用户的操作负担,尤其适用于内容丰富的...
jquery插件jquery-ui-timepicker-addon.j
jQuery作为一款强大的JavaScript库,提供了许多方便的插件来实现这种布局,其中Grid-A-Licious就是其中之一。 **一、Grid-A-Licious概述** Grid-A-Licious是一款轻量级的jQuery插件,特别适合用于创建图片相册或...
【jQuery仿新浪微博@功能代码】是一种常见的前端交互设计,它基于JavaScript库jQuery实现,用于在网页文本输入框中实现类似新浪微博的“@”提及功能。这个功能的主要目的是提高用户在社交媒体或评论系统中的互动体验...