微信小程序滑动,点击居中导航栏

手把手教你完成微信小程序顶部导航栏 微信小程序顶部导航栏十分常见、尤其是在新闻类的小程序里,常见的导航栏有可水平滑动导航栏、居中导航栏、平分导航栏,本文手把手教你完成水平导航栏。 以《报修小程序源码》为基础拓展讲解平分导航栏 传送门:flask + mysql + 微信报修小程序源码获取 最终实现结果如下: 编写 wxml 页面 编程思路: 需要一个外层 view ,将内层水平的子 view 包含进来 ,保证内层 view 的... 阅读详情

 

 wxml

<scroll-view scroll-x="true" class="nav" scroll-left="{{navScrollLeft}}" scroll-with-animation="{{true}}">
    <block wx:for="{{packInfo.packTypes}}" wx:for-index="idx" wx:for-item="navItem" wx:key="idx">
      <view class="nav-item {{idx == typeIndex ?'active':''}}" data-index="{{idx}}" bindtap="switchNav">{{navItem.name}}</view>
    </block>
</scroll-view>

js

 */
  data: {
    packInfo:[],
    // 类型下标
    typeIndex: 0,   
    navScrollLeft: 0, 
  },
  
  switchNav(event) {
    console.log('switchNav-windowWidth=' + this.data.windowWidth)
    var index = event.currentTarget.dataset.index;
    console.log('index=' + index)

    //每个tab选项宽度占1/5
    if(index==2){
      var move22 = this.data.windowWidth * 0.22;
    }else if(index>2){
      var move22  = (index - 1) * this.data.windowWidth * (0.22+(index/100));
    }else{
      var move22 = 0;
    }
    console.log('move22=' + move22)
    this.setData({
      navScrollLeft: move22,
      typeIndex: index
    }) 
    this.getPackInfo()
  },

/**
   * 生命周期函数--监听页面加载
   * 获取手机屏幕宽度
   */
  onLoad: function (options) {
    wx.getSystemInfo({
      success: (res) => {
        this.setData({          
          windowWidth: res.windowWidth
        })
      },
    }) 
  },

wxss


.nav {
  margin-top: 10rpx;
    height: 60rpx;
    width:  100%;
    box-sizing: border-box;
    overflow: hidden;
    line-height: 60rpx;
    background: #f7f7f7;
    white-space: nowrap;  
    font-size: 0.8rem;
}
.nav-item {
    width: 28%;
    display: inline-block;
    text-align: center;
    background-color: #fff;
    margin-right: 20rpx;
}
.nav-item.active{
    color: red;
}

微信小程序tab切换,可滑动切换,导航栏跟随滚动实现 微信小程序tab切换,可滑动切换,导航栏跟随滚动实现 简介 看到今日头条小程序页面可以滑动切换,而且tab导航条也会跟着滚动,点击tab导航,页面滑动,切导航栏也会跟着滚动,就想着要怎么实现这个功能 像商城类商品类目如果做成左右滑动切换类目用户体验应该会好很多,我这里只是一个小demo,没有怎么去考虑数据的问题,主要是想着去实现这么个功能,有可能后期引入数据后会出现问题,欢迎提出互相讨论 解决过程... 阅读详情

相关推荐

微信小程序 ---制作一个类似头条的滑动tab导航栏

效果图: 使用页面wxml <!-- 顶部滑动导航栏组件 --> <slideNav navList="{{ navList }}" fontSize="{{ 28 }}" padding="{{ 20 }}" bindtabFun="tabFun"></slideNav> 使用页面json { "usingComponents": { "sli...

删库跑路 890

微信小程序

微信小程序中,引入地图,上传图片,tab切换

lucky2_的博客 280

微信小程序tab切换,可滑动切换,导航栏跟随页面滚动

还未整理!!! 实例代码: js: //index.js //获取应用实例 const app = getApp() Page({ data: { motto: 'Hello World', userInfo: {}, hasUserInfo: false, canIUse: wx.canIUse('button.open-type.getUserIn...

Dove言和 4219

微信小程序滑动导航栏切换页面

text>当前页面:{{item.name}}</text>{ id: 1, name: '页面1' },{ id: 2, name: '页面2' },{ id: 3, name: '页面3' }

m0_57213862的博客 1027

CH341的I2C流模式(StreamI2C)到底怎么用?从EEPROM读写到自定义设备,一篇讲清参数配置逻辑

本文详细解析了CH341的I2C流模式(StreamI2C)的使用方法,从EEPROM读写到自定义设备的参数配置逻辑。通过深入分析I2C协议基础、StreamI2C参数映射关系及典型设备配置示例,帮助开发者快速掌握StreamI2C的应用技巧,解决实际开发中的常见问题。

weixin_30932215的博客 448

xilinx 暑期学校项目(二) 通过HLS实现二维傅里叶变换(2Dfft)及图像数据读入读出方法

要进行维纳滤波,首先就是要将图像矩阵通过二维fft变换到频域。 但是hls_fft.h中只有一维fft的函数,因此我们采用对行逐行进行一维fft,再对列逐行进行一维fft来实现二维fft的效果。 文章目录自带的fft例程二维fft的实现数据的读入和读出读入读出维纳滤波操作 自带的fft例程 自带的fft例程中包括有如下四个函数 void dummy_proc_fe( bool direction, config_t* config, cmpxData in[FFT_LENGTH],

战斗果冻的训练中心 2329

微信小程序点击元素居中

先看一下效果 我们希望点击不居中的元素时可以自动居中,下面看一下实现的思路: 获取屏幕宽度的一半 获取点击元素距离屏幕左边的距离 获取点击元素的宽度一半 获取已经滚动的距离 计算距离的变化:点击元素与屏幕左边的距离-屏幕的一半+点击元素宽度的一半 计算最终需要滚动的距离:原先滚动距离+变化距离 在往下看之前先大致了解一下各变量代表的含义 // 大多数计算用到的参数,都在moveParams对...

我的技术博客 4706

SAP MM 物料描述MAKTX 40个字符不够用的问题处理

SAP物料描述表,长度40个字符一般情况下,40个字符在描述中也够用了,但是要加上规格之类的额外描述就不一定了,特别是对于辅助件-刀具。解决方案一:对maktx增强,换成CHAR80或者CHAR100的,但是风险较大,涉及到好多地方,另外SAP+ 算号器 也不支持。解决方案二:增强字段。内部顾问,建议在 那就在这里加一个字段,具体过程如下:1、创建域2、创建架构3、附加架构4、GUI 设置 5、后台设置6、MASS/MM17字段新增。过程1、创建域 SE112、创建结构 se11 3、MARA附加架构

GAVIN 4728

小程序scroll-view滑动标签与内容

<scroll-view scroll-x="true" class="tag_scroll"> <view class="label_nav" style="width:{{tagWidth}}"> <view wx:for="{{tabitem}}" wx:key="index" class="item-text {{tabIndex==...

hql1024的博客 934

别再只飞不记了!用CsvView分析你的大疆飞行日志,优化航拍与排查炸机原因

本文详细介绍了如何利用CsvView工具分析大疆无人机的飞行日志,帮助用户优化航拍效率和飞行安全。通过解读飞行日志中的关键数据,如电池性能、飞行轨迹等,用户可以及时发现潜在问题并改进飞行习惯。文章还提供了事故排查方法和进阶分析技巧,适合无人机爱好者和专业飞手。

weixin_42535461的博客 548

Python入门基础教程(非常详细)

Python是一门开源免费、通用型的脚本编程语言,它上手简单,功能强大,坚持「极简主义」。Python类库(模块)极其丰富,这使得Python几乎无所不能,不管是传统的Web开发、PC软件开发、Linux运维,还是当下火热的机器学习、大数据分析、网络爬虫,Python都能胜任。这套Python基础教程不是教科书,不会玩弄概念,而是力求口语化和通俗化,让读者尽快入门。如果有小朋友出于兴趣学习Python,请引导他阅读本教程的前半部分,这是基础,可以降低学习成本;...

Yuki1127918的博客 34万+

小程序导航栏

效果 页面 <!--pages/NCPQualitySafety/planting/information.wxml--> <wxs src="../../../utils/filter.wxs" module="filters" /> <view class="container"> <scroll-view scroll-x="true" class="nav" scroll-left="{{navScrollLeft}}" scroll-with-anim

gx18331567741的博客 2053

新手如何学习车载底层嵌入式软件开发(AutoSar)

汽车嵌入式开发

ACarSoft的博客 4219

uniapp 封装一个导航栏,可切换tab也可滑动切换

本文介绍了一个通用的导航栏组件实现方案,支持点击切换和滑动切换功能。主要特点包括:1) 当前tab会自动居中显示;2) 支持上拉刷新和下拉加载;3) 采用Vue3+setup语法封装。组件分为顶部导航栏和内容区两部分,导航栏使用scroll-view实现横向滚动,内容区使用swiper实现滑动切换。组件通过计算tab位置实现居中效果,并提供了丰富的插槽和事件接口。示例代码展示了如何在订单管理页面中使用该组件,支持不同订单状态的切换和分页加载。该实现方案简洁高效,适合各类需要tab切换的场景。

m0_64288662的博客 61

多模态轨迹预测:行人、车辆的交互式推理

多模态轨迹预测:行人、车辆的交互式推理 ,人工智能,计算机视觉,大模型,AI,本文围绕多模态轨迹预测中行人与车辆的交互式推理展开,介绍了其定义,即综合多种信息预测交通参与者未来多种轨迹。涵盖基础概念如轨迹表示、模态、交互关系,技术框架包括数据处理、特征提取、预测模型(物理、机器学习、深度学习模型等)及结果评估。还探讨了交互式推理方法、面临的不确定性处理等挑战、应用场景、未来发展方向、相关工具及实际案例,展现了该技术在智能交通等领域的重要性与发展潜力。​

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 14万+

【如何学习CAN总线测试】——Python+Robot Framework框架实现UDS诊断自动化

由于项目需要进行UDS诊断测试,所以对这方面进行了研究学习,网上很少能查询到相关资料,故记录一下UDS自动化测试开发过程,由于保密原则,案例都是Demo,希望能帮到感兴趣的朋友。

测试领域技术分享 7465

导航栏滚动居中

导航栏滚动居中 wxml <view class="content"> <scroll-view scroll-x="true" scroll-with-animation style="width:100%;" class="ul" scroll-left="{{scrollLeft}}"> <view wx:for="{{8}}" wx:key="index" class="li strategy-tab {{currentIndex == index ? '

weixin_40199449的博客 432

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

微信小程序:视图容器scroll-view实现滚动导航栏

前言 最近在研究小程序,看到了视图容器组件“scroll-view”,它是可滚动视图区域的组件,支持横向滚动和纵向滚动。刚好看到优快云的手机端,看到了顶部的滚动导航栏。不清楚app的滚动导航是怎么实现的,一时兴起,就做了个微信小程序的滚动导航。 编码实战 因为实现这个滚动导航栏还是很简单的,所以我就直接贴上代码了,再进行部分讲解。 首先是页面的代码: <scroll-view scroll...

清风一阵吹我心 3565

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

微信小程序顶部tab切换,可滑动切换,导航栏跟随滚动实现

wxml代码: &lt;view class="container"&gt; &lt;!-- tab导航栏 --&gt; &lt;!-- scroll-left属性可以控制滚动条位置 --&gt; &lt;!-- scroll-with-animation滚动添加动画过渡 --&gt; &lt;scroll-view scroll-x="true" class=&q

琪丶琪的博客 7960

小程序 菜单栏点击切换页面 页面可左右滑动

小程序 菜单栏点击切换页面 页面可左右滑动 — html <!--首页--> <view class="homePage"> <!-- 导航栏 --> <view class="container"> <!-- tab导航栏 --> <!-- scroll-left属性可以控制滚动条位置 --> <!-- scroll-with-animation滚动添加动画过渡 --> <sc

Lenny-zlp的博客 1694

小程序点击tab导航栏滑动居中

图片 wxml: <scroll-view class="scroll-view_H" scroll-left="{{scroll_left}}" scroll-with-animation="true" scroll-x="true"> <view class="scroll-view-item_H"> <view wx:for="{{topArray}}" bindtap="clickTitle" data-t

liangxiaomanbu的博客 1192

微信小程序-tab左右滑动切换

注意事项 在处理顶部tab导航跟随底部页面滑动的时候遇到一个问题,就是在给<scroll-view>中的scrll-left赋值的时候遇到的问题 逻辑上讲初始时tab导航下标小于2时导航栏不滚动,当大于2时向左滑动,以使被选中的导航栏居中,但是当最左侧的选项因为左滑看不到后,我又点击左侧选项希望导航往右滑动,能够看到左边的导航,按上面的js代码计算scroll-left会产生负值,但是scroll-left即使为负值,但是滚动条不会向左缩进去,所以即使为负值,相当于为0,当时做的时候一直在思考这个怎么用

Sir514的博客 4061

【已解决】微信小程序tab导航居中+滚动顶部吸顶效果

一、效果: 当页面滑动至顶部,这个tab导航条会固定在顶部,实现吸顶的效果 二、代码: wxml: <scroll-view class="tab stickyClass" scroll-x scroll-left="{{tabScroll}}" scroll-with-animation="true"> <block wx:for="{{menuList}}" wx:ke...

Effotzjw_小白慢慢踏全栈 3395

微信小程序左右菜单mysql_微信小程序tab左右滑动切换功能的实现代码

效果图:一、简介自己的小程序需要实现这样的功能1.核心思想swiper 和scroll-view共用两个变量currentTab navScrollLeft,当点击nav或者滑动swiper时设置两个变量的值为当前的index二、实现tab导航栏使用标签,内容使用1.wxml实现{{navItem.text}}class="tab-content">{{tabItem}}2.js实现//i...

weixin_39956612的博客 436
上一篇: tp5和微信小程序联接mqtt订阅及发布
下一篇: tp5使用layui实现单个图片上传(带附件选择)
bilichen006
博客等级 码龄12年 93粉丝 66原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值