微信小程序顶部搜索栏随界面滑动变换

这篇具有很好参考价值的文章主要介绍了微信小程序顶部搜索栏随界面滑动变换。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

初始状态:

微信小程序顶部菜单栏滑动切换,小程序,微信小程序,小程序

目标状态:

 微信小程序顶部菜单栏滑动切换,小程序,微信小程序,小程序

效果:在界面向下滑动的时候,根据滑动的距离,缩短搜索框,并向上滑动

第一步:使用小程序的生命周期onPageScroll接听界面滚动,并获取下滑距离

                因为在本案例中,我胶囊顶部与默认状态下的搜索框顶部距离为74rpx,所以,我只需要0~74这个区间的内容,并拿到这个值(这个值是生命周期onPageScroll()自带的)

//监听界面滚动
  onPageScroll(e){
    //这个pxAndRpx是我计算的rpx和px的比例,如无必要也可以不用,直接默认为2
    var mrtop = e.scrollTop * this.data.pxAndRpx
    //滑动距离小于74时
    if ( mrtop<=74||this.data.marginTop<=74) {
      this.setData({
        marginTop : mrtop>74?74:mrtop
      })
    }
    // console.log("jhkkjh",this.data.marginTop);
  },

第二步:

在wxml中使用

//上方文字
<view class="addressClass" style="margin-top: {{胶囊属性中的距顶高度}};opacity: {{marginTop<=37?'1':(74-marginTop)/74}}; z-index: 100;">
    <text class="addressText">目标文字</text>
</view>


//搜索框
<view class="searchClass" style="height: {{胶囊高度}}rpx;margin-right: {{marginTop>='37'?(+37*6):(marginTop*6)}}rpx;margin-top: {{marginTop>='37'?(初始状态下的搜索框距顶高度-marginTop):(初始状态下的搜索框距顶高度)}}rpx;z-index: 101;">
我是搜索框
</view>

        这种效果实现的搜索框变换动画为,界面向上滑动,搜索框上下先不变,先由右向左缩短,达到一定程度后,在向上滑动。

还有一种效果

//上方文字
<view class="addressClass" style="margin-top: {{胶囊属性中的距顶高度}};opacity: {{marginTop<=37?'1':(74-marginTop)/74}}; z-index: 100;">
    <text class="addressText">目标文字</text>
</view>


//搜索框
<view class="searchClass" style="height: {{胶囊高度}}rpx;margin-right: {{marginTop>='74'?(74*3):(marginTop*3)}}rpx;margin-top: {{marginTop>='74'?(初始状态下的搜索框距顶高度-74):(初始状态下的搜索框距顶高度-marginTop)}}rpx;z-index: 101;">
我是搜索框
</view>

这种效果实现的搜索框变换动画为,边向上滑,边由右向左缩短,同步进行。

搜索框文章来源地址https://www.toymoban.com/news/detail-610777.html

到了这里,关于微信小程序顶部搜索栏随界面滑动变换的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序 顶部搜索 吸顶 不随页面滚动而滚动

    主要用于商城类小程序: 微信小程序 搜索框 顶部吸顶 顶部购物车栏固定 不随页面滚动而滚动 示例: 可以看到分为三部分--头部搜索框--中间商品区域(可滚动)----底部购物车(固定底部) 头部搜索框 最大的盒子宽高100% 头部盒子需要有固定高度 flex布局 flex-flow: column; (为了中间

    2024年02月12日
    浏览(45)
  • 微信小程序云开发之自定义顶部导航栏搜索框(非组件)

    提到微信小程序,就不得不提到它那磨人的顶部导航栏,真的有被丑到。身为强迫症患者,笔者实在是难以忍受,好在官方提供了解决方案,但是对于初学者还是有一丢丢的难度,为了初学者不在重蹈笔者的老路,这篇文章就给大家分享一下如何做一个好看的自定义顶部导航

    2024年02月10日
    浏览(32)
  • 微信小程序自定义顶部导航,滚动页面顶部导航颜色渐变

    微信小程序自定义顶部导航栏,使背景图置顶;当向上滚动页面时,实现顶部导航颜色渐变 实现方法 代码如下(示例): 提示:由于不同的手机机型顶部导航高度不一样,所有要获取手机的信息 总共三步: 1、初始化获取顶部导航信息 2、顶部导航文字上方通过view占位,同

    2024年02月11日
    浏览(41)
  • uniapp和微信小程序去掉顶部标题

    今天刚开始做一个uniapp的项目,新建的项目带有默认顶部标题,要去掉。 找到配置文件pages.json,小程序在app.json 添加代码 完成。 最后这个项目会一直更新所遇到的问题,可能会比较慢,希望自己能够坚持完成。

    2024年02月13日
    浏览(30)
  • 微信小程序webview 顶部title设置

    webview取的是vue页面的title标签中的内容 在配置router时设置name值,每当页面跳转,路由发生改变时,动态修改页面的title。可通过路由前置守卫来实现: 在webview页面的onLoad里设置标题:

    2024年02月12日
    浏览(30)
  • 微信小程序自动获取顶部导航栏高度

    1、本人是通过uniapp开发的微信小程序,原生开发基本相同,首先在data里声明变量 2、其次在onLoad生命周期中获取当前手机的导航栏宽高数据 3、navHeight获取的是当前手机型号的导航栏总高度;searchMarginTop获取的是手机顶部到小程序胶囊的高度,也就是下图黄色线框的高度;

    2024年02月11日
    浏览(59)
  • 微信小程序设置背景图铺满顶部

    由于微信小程序自带顶部导航栏,导致我们设置背景图时总是无法铺满顶部,其实想要铺满顶部只需要改变一个属性即可。将navigationStyle的默认属性修改为custom 在微信小程序需要设置背景图的文件下的.json文件中设置:

    2024年02月11日
    浏览(114)
  • 【微信小程序】头部导航栏背景铺满顶部

    背景:使用uniapp开发微信小程序 需求:需要微信小程序顶部导航栏使用页面背景铺满顶部 我们可以利用 navigationStyle 属性,来处理导航栏样式,支持 default/custom,其中 custom 可自定义导航栏,只保留右上角胶囊状的按钮。 在pages.json 文件里,将globalStyle中新增或修改 navigatio

    2024年02月16日
    浏览(36)
  • 微信小程序自定义顶部导航,附加返回主页按钮

      目录 一、修改对应json文件 二、获取微信小程序原生顶部导航栏的高  三、获取胶囊的宽高 四、设置wxml页面样式  话不多说,先上效果!!!       首先,我们都知道,通过原生小程序是不具备左侧胶囊的效果的,所以在实现这个功能的时候一定要记得修改当前页的jso

    2024年02月04日
    浏览(36)
  • H5+微信小程序中顶部导航设置:app-plus

    首先uniapp代码在微信小程序和App、H5之间有时候是不兼容的,例如正常通过app-plus设置顶部导航,H5端是合适的 目的效果展示的结果:如图所示,我们需要实现这样的效果 顶部没有出现搜索的图标和消息的图标 https://uniapp.dcloud.net.cn/collocation/pages.html#app-titlenview-searchinput 如图我

    2024年02月08日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包