精华内容
下载资源
问答
  • 主要介绍了微信小程序 下拉列表的实现实例代码的相关资料,需要的朋友可以参考下
  • 微信小程序下拉列表

    2019-08-15 17:38:33
    //控制下拉列表的显示隐藏,false隐藏、true显示 selectData : [ '高等数学' , '线性代数' , '程序设计' , '大数据' , '大学物理' ] , //下拉列表的数据 index : 0 , //选择的下拉列表下标 } , // ...
    1、效果图

    在这里插入图片描述
    在这里插入图片描述

    2、构建组件

    page.wxml

    <view class='select_box'>
        <view class='select' catchtap='selectTap'>
            <text class='select_text'>{{selectData[index]}}</text>
            <image class='select_img {{selectShow&&"select_img_rotate"}}' src='/images/triangle.png'  background-size="contain"></image> 
        </view>
        <view class='option_box' style='height:{{selectShow?(selectData.length>5?325:selectData.length*50):0}}rpx;'>
            <text class='option' wx:for='{{selectData}}' wx:key='this' data-index='{{index}}' catchtap='optionTap'>{{item}}</text>
        </view>
    </view>
    

    page.wxss

    .overflow {
      display: -webkit-box;
      overflow: hidden;
      text-overflow: ellipsis;
      word-break: break-all;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
      margin-top: 300rpx;
      border: 2rpx solid blueviolet;
      border-radius: 20rpx;
      background-color: lightgray;
    }
    
    .single {
      margin-top: 100rpx;
      border: 2rpx solid blueviolet;
      border-radius: 20rpx;
      background-color: lightgray;
      overflow: hidden;
      text-overflow:ellipsis;
      white-space: nowrap;
    }
    
    .shadow {
      margin-top: 50rpx;
      display: flex;
      flex-direction: column;
      justify-content: center;
      text-align: center;
      text-shadow: 10rpx 10rpx 10rpx plum;
    }
    
    
    .select_box{
      width:45%;
      height:70%;
      border-radius: 14rpx;
      position: relative;
    }
    .select_box .select{
      box-sizing: border-box;
      width: 100%;
      height: 100%;
      border-radius: 8rpx;
      display: flex;
      align-items: center;
      padding: 0 10rpx;
    }
    .select_box .select .select_text{
      font-size: 26rpx;
      color: #777777;
      line-height: 28rpx;
      flex: 1;
    }
    .select_box .select .select_img{
      width: 30rpx;
      height: 30rpx;
      display: block;
      transition:transform 0.3s;
    }
    .select_box .select .select_img_rotate{
      transform:rotate(180deg); 
    }
    .select_box .option_box{
      position: absolute;
      top: calc(100% - 1px);
      width: 100%;
      box-sizing: border-box;
      height: 0;
      overflow-y: auto;
      background: #fff;
      transition: height 0.3s;
      border-left:1px solid #efefef;
      border-right:1px solid #efefef;
    }
    .select_box .option_box .option{
      display: block;
      line-height: 30rpx; 
      font-size: 26rpx;
      border-top: 1px solid #efefef;
      border-bottom: 1px solid #efefef;
      padding: 10rpx;
    }
    

    page.js

    Page({
    
      data: {
        selectShow: false,//控制下拉列表的显示隐藏,false隐藏、true显示
        selectData: ['高等数学','线性代数','程序设计','大数据','大学物理'],//下拉列表的数据
        index: 0,//选择的下拉列表下标
      },
      // 点击下拉显示框
      selectTap() {
        this.setData({
          selectShow: !this.data.selectShow
        });
      },
      // 点击下拉列表
      optionTap(e) {
        let Index = e.currentTarget.dataset.index;//获取点击的下拉列表的下标
        this.setData({
          index: Index,
          selectShow: !this.data.selectShow
        });
      },
    })
    
    展开全文
  • 微信小程序下拉列表菜单

    千次阅读 2018-12-01 10:26:14
    效果图:   1.wxml   2.wxss .list-msg {  padding: 0 10rpx; background-color: #fff; position: relative; width: 90%; margin: 30rpx auto; }   .list-msg .list-msg2 { ...display: ...

    效果图:

     

    1.wxml

     

    2.wxss

    .list-msg { 

    padding: 0 10rpx;

    background-color: #fff;

    position: relative;

    width: 90%;

    margin: 30rpx auto;

    }

     

    .list-msg .list-msg2 {

    height: 70rpx;

    display: flex;

    align-items: center;

    justify-content: space-around;

    border: 1px solid #f89219;

    padding: 0 20rpx;

    color: #f89219;

    border-radius: 10rpx;

    }

     

    .select_box {

    padding: 0;

    width: 97%;

    position: absolute;

    top: 90rpx;

    z-index: 1;

    overflow: hidden;

    animation: myfirst 0.5s;

    text-align: center;

    border: 1px solid #f89219;

    color: #f89219;

    border-radius: 10rpx;

    }

     

    @keyframes myfirst {

    from {

    height: 0rpx;

    }

     

    to {

    height: 300rpx;

    }

    }

     

    .select_one {

    height: 70rpx;

    line-height: 70rpx;

    border-bottom: 1px solid #f89219;

    background: #fff;

    }

     

    .select_one:last-child {

    border-bottom: none;

    }

     

    3.js

    data: {

    select: false,

    tihuoWay: '五年级上册第一关班级内详情',

    }

    bindShowMsg() {

    this.setData({

    select: !this.data.select

    })

    },

    mySelect(e) {

    var name = e.currentTarget.dataset.name

    this.setData({

    tihuoWay: name,

    select: false

    })

    },

    展开全文
  • 微信小程序列表下拉刷新加载更多微信小程序列表下拉刷新加载更多微信小程序列表下拉刷新加载更多
  • 小程序页面集成了下拉功能,并提供了接口,我们只需要一些配置就可以拿到事件的回调。 需要在 .json 文件中配置。 如果配置在app.json文件中,那么整个程序都可以下拉刷新。如果写在具体页面的.json文件中,那么就是...
  • 主要为大家详细介绍了微信小程序实现列表下拉刷新上拉加载,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 这篇文章主要介绍了微信小程序 下拉刷新及上拉加载实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.下拉刷新的概念及应用场景。 概念: 下拉刷新是...
  • 主要介绍了微信小程序显示下拉列表功能,涉及微信小程序navigator组件导航及页面加载相关操作技巧,并附带源码供读者下载参考,需要的朋友可以参考下
  • 微信小程序下拉选项框

    万次阅读 2019-02-18 11:55:06
    效果图 test.js /** * 页面的初始数据 */ ... selectDatas: ['消费账户', '平台返利账户', '微信钱包'], //下拉列表的数据 indexs: 0, //选择的下拉列 表下标, }, // 点击下拉显示框 s...

    效果图
    在这里插入图片描述
    在这里插入图片描述
    test.js

    /**
       * 页面的初始数据
       */
      data: {
        shows: false, //控制下拉列表的显示隐藏,false隐藏、true显示
        selectDatas: ['消费账户', '平台返利账户', '微信钱包'], //下拉列表的数据
        indexs: 0, //选择的下拉列 表下标,
      },
    
      // 点击下拉显示框
      selectTaps() {
        this.setData({
          shows: !this.data.shows,
        });
      },
      // 点击下拉列表
      optionTaps(e) {
        let Indexs = e.currentTarget.dataset.index; //获取点击的下拉列表的下标
        console.log(Indexs)
        this.setData({
          indexs: Indexs,
          shows: !this.data.shows
        });
    
      },
    
    

    test.wxml

    <view class='fenlei'>
      <text>地址</text>
      <!-- 下拉框 -->
        <view class='select_box'>
          <view class='select' catchtap='selectTaps'>
            <text class='select_text'>{{selectDatas[indexs]}}</text>
            <!-- <image class='words_img' src='../../images/sanjiao.png'></image> -->
            <image class='select_img {{shows&&"select_img_rotate"}}' src='../../images/sanjiao.png'></image>
          </view>
          <view class='option_box' style='height:{{shows?(selectDatas.length>5?300:selectDatas.length*60):0}}rpx;'>
            <text class='option' style='{{indexs==selectDatas.length-1&&"border:0;"}}' wx:for='{{selectDatas}}' wx:key='this' data-index='{{index}}' catchtap='optionTaps'>{{item}}</text>
          </view>
        </view>
    </view>
    

    test.wxss

    /* fenlei */
    .fenlei{
      margin: 0 25rpx;
      height: 90rpx;
      line-height: 90rpx;
      border-bottom: 1rpx solid #e6e6e6;
      display: flex;
      align-items: center;
    }
    .fenlei text{
      font-size: 30rpx;
      color: #999999;
      margin-left: 15rpx;
    }
    /* 下拉框 */
    .select_box {
      background: #fff;
      width: 620rpx;
      /* margin: 0 auto; */
      height: 90rpx;
      line-height: 90rpx;
      text-align: left;
      position: relative;
    }
    
    .select {
      box-sizing: border-box;
      width: 100%;
      height: 86rpx;
      /* border: 1px solid #efefef; */
      border-radius: 8rpx;
      display: flex;
      align-items: center;
      padding: 0 20rpx;
    }
    
    .select_text {
      font-size: 28rpx;
      flex: 1;
      color: rgb(102, 102, 102);
      line-height: 86rpx;
      height: 86rpx;
    }
    
    .select_img {
      width: 40rpx;
      height: 40rpx;
      display: block;
      transition: transform 0.3s;
    }
    
    .select_img_rotate {
      transform: rotate(180deg);
    }
    
    .option_box {
      position: absolute;
      top: 86rpx;
      width: 100%;
      /* border: 1px solid #efefef; */
      box-sizing: border-box;
      height: 0;
      overflow-y: auto;
      border-top: 0;
      background: #fff;
      transition: height 0.3s;
      z-index: 100;
    }
    
    .option {
      display: block;
      line-height: 40rpx;
      font-size: 28rpx;
      border-bottom: 1px solid #efefef;
      padding: 10rpx;
      color: rgb(102, 102, 102);
    }
    
    展开全文
  • 自定义微信小程序下拉选择框组件

    万次阅读 2018-09-21 21:54:45
    自定义微信小程序下拉选择框组件如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能...

    预览效果图:↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
    预览效果

    ========================================================

    首先要新建一个组件

    1.在想要的位置上新建一个目录
    在这里插入图片描述
    2.在该目录中 右键 → 新建一个Component
    工具会自动生成四个文件(无视assets,那是我放图片的地方)
    在这里插入图片描述
    其中我们一般修改 .js .wxml .wxss 文件

    3.观察select.json文件
    “component”: true 这句话表示这个目录是作为一个组件的,可以给别的目录用
    在这里插入图片描述

    ========================================================

    开始编码

    selector.wxml

    <view class='selectBox'> 
      <view class='select' catchtap='selectTap'> 
        <text class='select_text'>{{selectData[index]}}</text> 
        <image class='select_img {{selectShow&&"select_img_rotate"}}' 
               src='../selector/assets/jiantou.jpg' 
               background-size="contain">
        </image> 
      </view> 
    
      <view class='optionBox'
      		style='height:300rpx;'>     
      	<text class='option' 
              wx:for='{{selectData}}' 
              wx:key='this' 
              data-index='{{index}}' 
              catchtap='optionTap'>{{item}}
        </text> 
      </view> 
    </view>
    

    ========================================================
    selector.wxss(要改的样式可以自己改)

    .selectBox{ height:1.5rem;border:2px solid black;border-radius: 20rpx; position: relative; padding-left: 10rpx} 
    .selectBox .select{ box-sizing: border-box; width: 100%; height: 100%; border-radius: 8rpx; display: flex; align-items: center; padding: 0 10rpx; } 
    .selectBox .select .select_text{ font-size: 35rpx; color:black; line-height: 28rpx; flex: 1; } 
    .selectBox .select .select_img{ width: 30rpx; height: 30rpx; display: block; transition:transform 0.3s; }
     .selectBox .select .select_img_rotate{ transform:rotate(180deg); } 
    .selectBox .optionBox{ position: absolute; top: calc(100%); width: 100%; box-sizing: border-box; height: 0; overflow-y: auto; background: #fff; transition: height 0.3s; border-left:2px solid black; border-right:2px solid black;border:1px solid black ;z-index:9999} 
    .selectBox .optionBox .option{ display: block; line-height: 50rpx; font-size: 35rpx; border-top: 2px solid black; padding: 10rpx;z-index:9999;} 
    

    =======================================================
    selector.js

    Component({
      /**
       * 组件的属性列表
       */
      properties: {
        selectData: { //下拉列表的数据
          type: Array,
          value: [] //初始数据,可通过属性修改
        },
      },
    
      /**
       * 组件的初始数据
       */
      data: {
        selectShow: false,//控制下拉列表的显示隐藏,false隐藏、true显示
        index: 0,//选择的下拉列表下标
      },
    
      /**
       * 组件的方法列表
       */
      methods: {
        selectTap() {
          this.setData({
            selectShow: !this.data.selectShow
          });
        },
        optionTap(e){
          let Index=e.currentTarget.dataset.index;
          this.setData({
            index:Index,
            selectShow:!this.data.selectShow
          });
        }
      }
    })
    

    ========================================================

    定义完了组件,开始使用

    1.首先在要使用的地方的.json文件中声明用到了该组件

    {
      "usingComponents": {
        "selector":"/pages/selector/selector"
      }
    }
    

    2.直接使用组件标签(selectData定义为属性,可以自定义可选的列表)

         <selector selectData="{{position}}"></selector>
    

    OK,大功告成!
    附上我的箭头图片 ↓↓↓↓
    箭头

    展开全文
  • 微信小程序下拉刷新

    2018-01-22 16:50:41
    今天研究了一下小程序刷新的相关知识,我的需求UI如图所示(点击类目一,类目二刷新列表数据,类目固定在顶部不能滚动,只能滚动列表内容,底部是小程序首页的tab,先要使用微信自带的接口实现下拉刷新): ...
  • 为了提升小程序的用户体验 ,下来刷新列表图片可以用懒加载的,分页加载用concat 添加,我个人用的方法是每请求一页数据就增加一个数组,用来存放获取到的数据,这样setData重新更新数据的时候就只需要更新一组数据...
  • 针对于微信小程序做了个下拉菜单的自定义组件,样式如下~ 主要包括以下两种类型 级联选择器,例如xx区-xx街道 下拉列表,例如排序,筛选等 使用 具体使用方式参照index.wxml示例 支持动态修改Navgation上的...
  • 在一些特殊的UI设计中,需要点击某一处然后弹出下拉菜单列表进行交互。下面介绍一种比较简单的实现方法:wxml文件,使用isShowSelectList参数来控制列表是否隐藏,添加绑定事件bindtap="tapSelectBackView"。请选择...
  • 微信小程序下拉刷新、上拉加载更多 一、首先,固定一个包含列表数据的view高度,让它里面列表的数据溢出可以滚动: <scroll-view scroll-y lower-threshold="100" bindscrolltolower="scrollToLower" style=...
  • 先看需求和效果,移动端设计比较常用的下拉菜单,主要用于筛选查询列表结果。下拉菜单的样式可以根据自己的具体需求进行修改。...我在小程序开发的过程中也开发了许多组件,可以在我的gitee地址中去查看,所有组件的
  • 微信小程序下拉刷新、 上拉加载功能实现 最近开发小程序发现很多页面都是列表, 列表就少不了刷新和加载更多. 所以就有下拉刷新, 上拉加载的需求, 那么我们怎么实现最为便捷呢? 小程序的文档中记载了页面的下拉和上...
  • 微信小程序例子——下拉列表

    万次阅读 2016-10-05 21:19:46
    微信小程序例子——下拉列表
  • 微信小程序列表下拉刷新上拉加载 在微信小程序当中我们经常会遇到一些列表,而我们会经常在其他app或者其他小程序当中遇到当前列表可以一直往下滑动,而在顶部下拉时又会重新加载新的内容,而我们要做出这种效果的话...
  • 微信小程序商城列表页前端实现,下拉刷新、排序、价格区间、商品类别、加购、搜索商品,基本满足需要。
  • 微信小程序 自定义 下拉列表 组件

    千次阅读 2020-06-11 14:08:45
    小程序中 没有使用 html 标签中的 select 下拉框 但项目要实现这个功能 只能自己动手敲 在文件 的根目录下 新建 components 文件夹 建立一个select 的文件夹 右键 点击新建Component 然后会自动生成这四个文件 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 389
精华内容 155
关键字:

微信小程序下拉列表

微信小程序 订阅