微信小程序实现多行文字滚动


Posted in Javascript onNovember 18, 2020

本文实例为大家分享了微信小程序实现多行文字滚动的具体代码,供大家参考,具体内容如下

微信小程序实现多行文字滚动

wxml

<view class="full" style="height:100%;overflow:hidden">
  <swiper autoplay="true" interval="3000" duration="500" circular="true" vertical="true" style="height:100%">
  <swiper-item wx:for="{{topnewslist}}" wx:key="{{index}}" catchtouchmove='catchTouchMove'>
   <van-notice-bar scrollable="{{false}}" bindtap="tonewsdetail" wx:for="{{item}}" wx:for-item="it" wx:key="{{index}}" data-newsid="{{it.new_id}}" style="width:100%" text="{{it.new_topic}}" />
  </swiper-item>
  </swiper>
</view>

wxss

swiper-item {
 height: 100%;
}

js

//index.js
//获取应用实例
import api from "../../utils/api.js"
var token = ''
const app = getApp()

Page({
 data: {
 topnewslist:[]
 },
 onLoad: function () {
 },
 tonewsdetail(e){
 var newsid=e.currentTarget.dataset.newsid;
 wx.navigateTo({
  url: '/pages/newsdetail/newsdetail?newsid='+newsid,
 })
 },

 loadscrollnews(){
 api.get("mpapi/mpmnews.ashx", { action:'toplist',token:token}).then((res)=>{
  if(res.code==1){
  //res.list=[{"new_id":1,"new_topic":"111"},{"new_id":2,"new_topic":"222"},{"new_id":3,"new_topic":"333"},{"new_id":4,"new_topic":"444"}]
  this.setData({
   topnewslist: this.splitArr(res.list, 2) //调用
   //调用之后[[{"new_id":1,"new_topic":"111"},{"new_id":2,"new_topic":"222"}],[{"new_id":3,"new_topic":"333"},{"new_id":4,"new_topic":"444"}]]
  })
  }
 })
 },
 /**
 * 分割数组创建二维数组封装
 * @param data 数组
 * @param senArrLen 需要分割成子数组的长度
 */
 splitArr(data, senArrLen){
 //处理成len个一组的数据
 let data_len = data.length;
 let arrOuter_len = data_len % senArrLen === 0 ? data_len / senArrLen : parseInt((data_len / senArrLen) + '') + 1;
 let arrSec_len = data_len > senArrLen ? senArrLen : data_len;//内层数组的长度
 let arrOuter = new Array(arrOuter_len);//最外层数组
 let arrOuter_index = 0;//外层数组的子元素下标
 // console.log(data_len % len);
 for (let i = 0; i < data_len; i++) {
  if (i % senArrLen === 0) {
  arrOuter_index++;
  let len = arrSec_len * arrOuter_index;
  //将内层数组的长度最小取决于数据长度对len取余,平时最内层由下面赋值决定
  arrOuter[arrOuter_index - 1] = new Array(data_len % senArrLen);
  if (arrOuter_index === arrOuter_len)//最后一组
   data_len % senArrLen === 0 ?
   len = data_len % senArrLen + senArrLen * arrOuter_index :
   len = data_len % senArrLen + senArrLen * (arrOuter_index - 1);
  let arrSec_index = 0;//第二层数组的索引
  for (let k = i; k < len; k++) {//第一层数组的开始取决于第二层数组长度*当前第一层的索引
   arrOuter[arrOuter_index - 1][arrSec_index] = data[k];
   arrSec_index++;
  }
  }
 }
 return arrOuter
 },
 // 截获竖向滑动
 catchTouchMove: function (res) {
 return false
 },
})

为大家推荐现在关注度比较高的微信小程序教程一篇:《微信小程序开发教程》小编为大家精心整理的,希望喜欢。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 命名空间以提高代码重用性
Nov 13 Javascript
JavaScript 继承详解(一)
Jul 13 Javascript
简单实用的js调试logger组件实现代码
Nov 20 Javascript
使用Mootools动态添加Css样式表代码,兼容各浏览器
Dec 12 Javascript
jQuery中创建实例与原型继承揭秘
Dec 21 Javascript
JS删除数组元素的函数介绍
Mar 27 Javascript
javascript中的nextSibling使用陷(da)阱(keng)
May 05 Javascript
深入理解JS实现快速排序和去重
Oct 17 Javascript
JS实现密码框的显示密码和隐藏密码功能示例
Dec 26 Javascript
jQuery对底部导航进行跳转并高亮显示的实例代码
Apr 23 jQuery
如何在微信小程序中存setStorage
Dec 13 Javascript
javascript 数组精简技巧小结
Feb 26 Javascript
微信小程序实现自定义底部导航
Nov 18 #Javascript
微信小程序绘制半圆(弧形)进度条
Nov 18 #Javascript
微信小程序实现加入购物车滑动轨迹
Nov 18 #Javascript
Map与WeakMap类型在JavaScript中的使用详解
Nov 18 #Javascript
解决js中的setInterval清空定时器不管用问题
Nov 17 #Javascript
springboot+vue实现文件上传下载
Nov 17 #Vue.js
vue 表单输入框不支持focus及blur事件的解决方案
Nov 17 #Vue.js
You might like
PHP使用内置dir类实现目录遍历删除
2015/03/31 PHP
分享50个提高PHP执行效率的技巧
2015/12/26 PHP
ThinkPHP模板Volist标签嵌套循环输出多维数组的方法
2016/03/23 PHP
PHP正则表达式笔记与实例详解
2019/05/09 PHP
Prototype Date对象 学习
2009/07/12 Javascript
关于div自适应高度/左右高度自适应一致的js代码
2013/03/22 Javascript
jquery左右滚动焦点图banner图片鼠标经过显示上下页按钮
2013/10/11 Javascript
jquery 缓存问题的几个解决方法
2013/11/11 Javascript
node.js中的http.response.setHeader方法使用说明
2014/12/14 Javascript
javascript消除window.close()的提示窗口
2015/05/20 Javascript
深入浅析AngularJS中的module(模块)
2016/01/04 Javascript
解决同一页面中两个iframe互相调用jquery,js函数的方法
2016/12/12 Javascript
React学习笔记之条件渲染(一)
2017/07/02 Javascript
简单实现js放大镜效果
2017/07/24 Javascript
jQuery实现模糊搜索功能的方法分析
2018/06/29 jQuery
基于vue2的canvas时钟倒计时组件步骤解析
2018/11/05 Javascript
一步快速解决微信小程序中textarea层级太高遮挡其他组件
2019/03/04 Javascript
javascript实现简易计算器功能
2020/09/23 Javascript
Python中datetime模块参考手册
2017/01/13 Python
Python 由字符串函数名得到对应的函数(实例讲解)
2017/08/10 Python
python之Character string(实例讲解)
2017/09/25 Python
python编写暴力破解zip文档程序的实例讲解
2018/04/24 Python
详解Python odoo中嵌入html简单的分页功能
2019/05/29 Python
Python Django的安装配置教程图文详解
2019/07/17 Python
python将字符串转变成dict格式的实现
2019/11/18 Python
200行python代码实现贪吃蛇游戏
2020/04/24 Python
python 瀑布线指标编写实例
2020/06/03 Python
python 通过 pybind11 使用Eigen加速代码的步骤
2020/12/07 Python
css3实现蒙版弹幕功能
2019/06/18 HTML / CSS
eBay法国购物网站:eBay.fr
2017/10/21 全球购物
荷兰在线体育用品商店:Avantisport.nl
2018/07/04 全球购物
印度尼西亚值得信赖的第一家网店:Bhinneka
2018/07/16 全球购物
2014年反洗钱工作总结
2014/11/22 职场文书
终止劳动合同通知书
2015/04/16 职场文书
初中政教处工作总结
2015/08/12 职场文书
QT与javascript交互数据的实现
2021/05/26 Javascript