纯javascript实现简单下拉刷新功能
纯javascript实现简单下拉刷新功能
发布时间:2016-12-30 来源:查字典编辑
摘要:代码很简单,实现的功能却很实用,直接奉上代码CSS:复制代码代码如下:PulltoRefreshdiv{position:absolute;...

代码很简单,实现的功能却很实用,直接奉上代码

CSS:

复制代码 代码如下:

<meta charset="utf-8" />

<title>Pull to Refresh</title>

<meta name="viewport" content="width=device-width,height=device-height,inital-scale=1.0,maximum-scale=1.0,user-scalable=no;" />

<style>

div{

position: absolute;

top:0px;

bottom:0px;

width:100%;

left:0px;

overflow: hidden;

}

li{

list-style-type: none;

height:35px;

background: #ccc;

border-bottom: solid 1px #fff;

text-align: left;

line-height: 35px;

padding-left:15px;

}

ul{

width:100%;

margin-top:0px;

position: absolute;

left:0px;

padding:0px;

top:0px;

}

</style>

HTML:

复制代码 代码如下:

<div>

<ul class = 'scroll'>

<li>1</li>

<li>2</li>

<li>3</li>

<li>4</li>

<li>5</li>

<li>6</li>

<li>7</li>

<li>8</li>

<li>9</li>

<li>10</li>

<li>1</li>

<li>2</li>

<li>3</li>

<li>4</li>

<li>5</li>

<li>6</li>

<li>7</li>

<li>8</li>

<li>9</li>

<li>10</li>

</ul>

</div>

<script>

var scroll = document.querySelector('.scroll');

var outerScroller = document.querySelector('.outerScroller');

var touchStart = 0;

var touchDis = 0;

outerScroller.addEventListener('touchstart', function(event) {

var touch = event.targetTouches[0];

// 把元素放在手指所在的位置

touchStart = touch.pageY;

console.log(touchStart);

}, false);

outerScroller.addEventListener('touchmove', function(event) {

var touch = event.targetTouches[0];

console.log(touch.pageY + 'px');

scroll.style.top = scroll.offsetTop + touch.pageY-touchStart + 'px';

console.log(scroll.style.top);

touchStart = touch.pageY;

touchDis = touch.pageY-touchStart;

}, false);

outerScroller.addEventListener('touchend', function(event) {

touchStart = 0;

var top = scroll.offsetTop;

console.log(top);

if(top>70)refresh();

if(top>0){

var time = setInterval(function(){

scroll.style.top = scroll.offsetTop -2+'px';

if(scroll.offsetTop<=0)clearInterval(time);

},1)

}

}, false);

function refresh(){

for(var i = 10;i>0;i--)

{

var node = document.createElement("li");

node.innerHTML = "I'm new";

scroll.insertBefore(node,scroll.firstChild);

}

}

</script>

以上就是本文的全部内容了,希望对大家学习javascript能够有所帮助。

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新Javascript教程学习
热门Javascript教程学习
编程开发子分类