关于监听滚动事件加载更多的代码

$(".rankDetail").scroll(function(){ //rankDetail是大容器的class
        var scrollHeight = $(this).scrollTop();
        var rankListCount = $(".rankList").length;  //rankList是容器中的一个项目,相似于一个li
        var rankListHeight = $(".rankList").height();
        var rankListTotalHeight = rankListHeight * rankListCount;
        var rankDetailHeight = $(".rankDetail").height();
        var diffHeight = rankListTotalHeight - rankDetailHeight - scrollHeight;
        //能够加载新数据
        if(diffHeight >=0 && diffHeight < rankListHeight && isLoad == false){
            var pageNum = Math.ceil(rankListCount / pageSize) + 1;//pageSize是加载一次数据总量
            getName(pageNum);  //getName是加载程序,pageNum是加载是所传的参数
        }
    })

还有另一个问题就是,举个例子,单页面上有一个div,页面刷新的时候div的display为none,触发某个事件的时候div显示出来,在同一个项目的另一个页面里面,点击某个button时跳转到第一个页面,同时但愿这个页面的隐藏div处于打开状态,怎么办呢?    给第二个页面跳转时设置location.href="/firstPage?title=1"      此时firstPage后面的东西是不影响页面跳转的,页面会跳转到第一个界面,而后html

if(location.href.indexOf("title=1") !== -1){  //也就证实此时页面是由第二个页面跳转过来的
        divShow();  //将你要显示的div显示出来
    }

最后一个问题是动态添加的div的点击问题:ios

点击某个button向页面中添加一个div  ,若是想点击新添加的div里面的某个div怎么办?git

若是你直接获取第二个div,而后添加点击事件,这样的程序是无法点击的:参考下面代码添加点击事件:github

$(".nameInput").on("click",".moreName",function(){  //moreName是第二个div,nameInput是它的爷爷辈
元素,也就是页面第一次加载就存在的元素,不是动态添加的;
        var title=$(this).attr("title");
        if(title == 1){  //添加title能够知道你这个元素是否被点击过,方面进行其余操做,注意这个用法很是实用
            $(".nameInput").append(html);//此时的html是一个模版,按需求定义
            $(this).attr("src","./img/delete.png");
            $(this).attr("title","2");
        }else{
            $(this).parent().remove();
        }
    });

输入框的验证问题:web

$('.phone').blur(function(){
         var $parent = $(this).parent();
         var value=$(this).val();
         if(this.value==""){
             var errorMsg = '留下您的电话';
            $parent.append('<small class="formtips">'+'*'+errorMsg+'</small>');
         }
    }).keyup(function(){
        $(this).triggerHandler("blur");
    });

blur表明失去焦点时的事件,适用与不使用插件的验证方式app

补充一下:举个例子,页面中有个div设置了overflow-y:auto;内容溢出时在安卓机上能够滑动加载更多,可是到了ios机子上就会出现拖动时拖动整个页面,而div里面的内容没有加载更多,这个问题的解决办法见:https://github.com/wwhgtt/iNoBounce;  须要引入的文件为:<script src="./js/lib/inobounce.min.js"></script>;同时为你的div设置: -webkit-overflow-scrolling: touch;
this

相关文章
相关标签/搜索