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


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 相关文章推荐
JSQL SQLProxy 的 php 版本代码
May 05 Javascript
JQUBar 基于JQUERY的柱状图插件
Nov 23 Javascript
来自国外的页面JavaScript文件优化
Dec 08 Javascript
JS实现简单的图书馆享元模式实例
Jun 30 Javascript
jQuery tagsinput在h5邮件客户端中应用详解
Sep 26 Javascript
JS自定义滚动条效果简单实现代码
Oct 27 Javascript
jQuery获取table表中的td标签(实例讲解)
Jul 28 jQuery
基于jstree使用AJAX请求获取数据形成树
Aug 29 Javascript
使用Angular 6创建各种动画效果的方法
Oct 10 Javascript
2020京东618叠蛋糕js脚本(亲测好用)
Jun 02 Javascript
Jquery滑动门/tab切换实现方法完整示例
Jun 05 jQuery
Vue通过Blob对象实现导出Excel功能示例代码
Jul 31 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
CI框架中redis缓存相关操作文件示例代码
2016/05/17 PHP
详解PHP变量传值赋值和引用赋值变量销毁
2019/03/23 PHP
JavaScript Cookie 直接浏览网站分网址
2009/12/08 Javascript
Extjs EditorGridPanel中ComboBox列的显示问题
2011/07/04 Javascript
js将json格式内容转换成对象的方法
2013/11/01 Javascript
键盘KeyCode值列表汇总
2013/11/26 Javascript
js类型转换与引用类型详解(Boolean_Number_String)
2014/03/07 Javascript
JavaScript中按位“异或”运算符使用介绍
2014/03/14 Javascript
nodejs中实现路由功能
2014/12/29 NodeJs
手机端转盘抽奖代码分享
2015/09/10 Javascript
java必学必会之static关键字
2015/12/03 Javascript
用js写的一个路由(简单实例)
2016/09/24 Javascript
Django+Vue.js搭建前后端分离项目的示例
2017/08/07 Javascript
React-router v4 路由配置方法小结
2017/08/08 Javascript
js事件触发操作实例分析
2019/06/21 Javascript
初试vue-cli使用HBuilderx打包app的坑
2019/07/17 Javascript
基于vue 实现表单中password输入的显示与隐藏功能
2019/07/19 Javascript
稍微学一下Vue的数据响应式(Vue2及Vue3区别)
2019/11/21 Javascript
[19:26]TNC vs EG (BO3)
2018/06/07 DOTA
Python实现遍历windows所有窗口并输出窗口标题的方法
2015/03/13 Python
python复制与引用用法分析
2015/04/08 Python
Python实现的十进制小数与二进制小数相互转换功能
2017/10/12 Python
对python for 文件指定行读写操作详解
2018/12/29 Python
Python遍历字典方式就实例详解
2019/12/28 Python
在vscode中启动conda虚拟环境的思路详解
2020/12/25 Python
Python3+Appium安装及Appium模拟微信登录方法详解
2021/02/16 Python
印度领先的在线时尚商店:Koovs
2016/08/28 全球购物
Airbnb爱彼迎官网:成为爱彼迎房东,赚取收入
2019/03/14 全球购物
学生评语大全
2014/04/18 职场文书
ktv好的活动方案
2014/08/17 职场文书
客户付款通知书
2015/04/23 职场文书
家装电话营销开场白
2015/05/29 职场文书
2016年会领导致辞稿
2015/07/29 职场文书
2019通用版导游词范本!
2019/08/07 职场文书
《鲁班学艺》读后感3篇
2019/11/27 职场文书
JavaScript中MutationObServer监听DOM元素详情
2021/11/27 Javascript