微信小程序第六篇:元素吸顶效果实现

这篇具有很好参考价值的文章主要介绍了微信小程序第六篇:元素吸顶效果实现。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

 系列文章传送门:

微信小程序第一篇:自定义组件详解

微信小程序第二篇:七种主流通信方法详解

微信小程序第三篇:获取页面节点信息

微信小程序第四篇:生成图片并保存到手机相册

微信小程序第五篇:页面弹出效果及共享元素动画

话不多说,先看效果:

微信小程序吸顶,微信小程序,微信小程序,小程序

这种效果在我们日常开发中是非常常见的,下面让我们结合代码一起来看看是如何实现的吧。

js 部分数据:

data: {
    content: {
      value: '啦啦啦',
      isShow: false
    },
    message: [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20],
    mainHeight: app.globalData.wHeight - app.globalData.headerHeight
  },
 

wxml部分代码: 

<template name="scrollData">
    <view style="height: 100rpx; width: 90%;margin: 20rpx auto;background-color: rgb(172, 212, 219);">
        {{item}}
    </view>
</template>

<view>
    <header bg="{{'transparent'}}">YinJie</header>
    <view style="height: 60rpx;width: 100%;background-color: pink;text-align: center;font-size: 22rpx;position: fixed;z-index: 999;"
      wx:if="{{content.isShow}}"
    >
        {{content.value}}
    </view>  
    <scroll-view class="" scroll-y="true" bindscroll="scroll" enable-flex="true" style="height: {{mainHeight}}rpx;">
        <view style="height: 400rpx; width:90%; margin: 0 auto; background-color: grey">
        </view>
        <view style="height: 60rpx;width: 100%;background-color: pink;text-align: center;font-size: 22rpx;margin-top: 20rpx;">
            啦啦啦
        </view>
        <template is="scrollData" data="{{item}}" wx:for="{{message}}" wx:key="index"></template>
    </scroll-view>
</view>

我们要实现“啦啦啦”所在的元素块在移动到它的时候吸顶,那必然需要结合 scroll-view 标签的 bindscroll 属性实现,吸顶的关键就是我们在header标签下写一个和要吸顶元素一模一样的wxml元素。通过 wx:if 来控制它的显示与隐藏,当页面移动到“啦啦啦”所在位置的时候显示这个元素,并且让他的 position 为 fixed,这样就巧妙实现了元素的吸顶效果。

  scroll: function(e) {
      if (e.detail.scrollTop >= 216) {
        if (!this.data.content.isShow) {
          this.setData({
            'content.isShow': true
          })
        }
      } else {
        if (this.data.content.isShow) {
          this.setData({
            'content.isShow': false
          })
        }
      }
  },

当页面距离顶部高度超过 216 也就是 “啦啦啦” 所在元素高度时,就让 header 下的元素显示。反之,当页面距离顶部高度小于 216 时再让他隐藏就可以啦!文章来源地址https://www.toymoban.com/news/detail-562966.html

到了这里,关于微信小程序第六篇:元素吸顶效果实现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • uni-app+ts----微信小程序锚点定位 、自动吸顶、滚动自动选择对应的锚点(点击tab跳转对应的元素位置)

    html代码部分 重点是给元素加入【 :id=“‘item’ + item.id”】 2.JS代码部分

    2024年02月21日
    浏览(41)
  • 微信小程序第五篇:页面弹出效果及共享元素动画

    系列文章传送门: 微信小程序第一篇:自定义组件详解 微信小程序第二篇:七种主流通信方法详解 微信小程序第三篇:获取页面节点信息 微信小程序第四篇:生成图片并保存到手机相册 目录 一、page-caontainer 实现假页弹出 二、share-element 实现共享元素动画 首先我们先看一

    2024年02月09日
    浏览(33)
  • uniapp小程序利用transition实现吸顶效果

     需要利用scroll-view监听页面滚动距离(注意,需要添加:throttle=\\\"false\\\"关闭内置的节流阀) scrollTop监听页面滚动变化 然后利用官网的transition组件实现吸顶效果(选用淡入淡出) (zero-custom-bar、v-tab是第三方插件库,可以去插件市场搜索。Topbar是我自己封装的一个自定义组件,可以

    2024年02月08日
    浏览(36)
  • 微信小程序 顶部搜索 吸顶 不随页面滚动而滚动

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

    2024年02月12日
    浏览(45)
  • 微信小程序使用scroll-view导致吸顶无效或vant-sticky吸顶无效

    我们先清楚为什么要使用scroll-view? 在做回到顶部时,需要拿到实时的滚动距离,这时候就得使用上scroll-view了 记录一次在做 微信小程序开发时,在没有使用scroll-view的时候,我们使用vant-sticky做吸顶效果的时候可以正常使用。 但是当我们使用scroll-view时,突然发现吸顶失效

    2024年02月09日
    浏览(34)
  • 微信小程序实现翻效果

    最近要在微信小程序里实现一个类似翻页的场景,网上翻看了多个案例无非就两种实现,第一种通过css 3d变换+动画实现,第二使用Turn.js现成库。前者实现效果一般,后者js库是基于古老的JQuery来实现的并没办法移植到小程序了里。 下面就自己调研了一下turnjs来实现小程序的

    2024年02月12日
    浏览(33)
  • 微信小程序 - - - - - 瀑布流效果实现

    对于一些小程序,关于瀑布流的需求是很正常的,瀑布流看起来确实很舒服,但是具体该如何实现呢? 下文给出的方式是: js + css 瀑布流,又称 瀑布流式布局 。 是比较流行的一种网站页面布局, 视觉表现为 参差不齐的多栏布局 ,随着页面滚动条向下滚动,这种布局还会

    2024年02月17日
    浏览(35)
  • 微信小程序——实现手机振动效果

    ✅作者简介:2022年 博客新星 第八 。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏:微信小程序学习分享 ✨特色专栏:国学周更-心性养成之路 🥭本文内容:微信小程序——实

    2024年02月15日
    浏览(39)
  • 微信小程序 实现进度条效果

    微信小程序中的原生进度条组件(Progress)只能显示一种进度状态,但有时我们需要展示多种状态,比如预算已使用与本次申请的进度。为了实现这一功能,我采用了 canvas 来绘制多种状态的进度条。记录下小程序原生组件 Progress 的单状态使用,以及通过 canvas 实现多状态进度

    2024年04月17日
    浏览(29)
  • 微信小程序组件 实现加载中效果

    大家好哇,我是梦辛工作室的灵,我又来了=-=,最近项目开发中,需实现一个加载效果,上图给大家看下: 感觉一般把,还是挺好写的,我就封装成了一个组件,方便大家以后使用,使用方法如下: 还是简单吧,原理其实也很简单,就是 n个正方形(中间一根线) 旋转 后就

    2024年02月12日
    浏览(37)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包