1 回答

TA贡献1850条经验 获得超11个赞
1.你用<a>标签实现点击,但是<a>标签是超链接,所以会有一个默认跳转的动作,目的地址就是href属性;
2.所以你每次点击后都会跳到那个href里的内容去,你这里是空白,所以会刷新页面;
3.这里有两种解决办法
4.第一种是给href加"#",这个是页面锚点的意思,你自己去查查,由于你页面没锚点,所以不会跳
<p>
<a href="#" class="btn" data-control="prev">上一页</a>
<a href="#" class="btn" data-control="next">下一页</a>
</p>
5.第二种是阻止<a>标签的跳转行为,在点击事件的回调函数里写
$('.btn').on('click', function() {
if ('prev' === $(this).data('control')) { //上一张
index = Math.max(0, --index);
} else { //下一张
index = Math.min(lens - 1, ++index);
}
var a = $('#img').attr('src', 'images/' + img[index]);
console.log($('#img').attr('src'));
return false // 阻止跳转
})
6.第二种方法更标准的写法是e.preventDefault(),但我估计你没学到事件,所以先用上面的,后面你学到了想起来可以查一下
添加回答
举报