小程序hover-class点击态效果实现


Posted in Javascript onFebruary 26, 2019

微信小程序设置 hover-class,实现点击态效果

增强小程序触感,提高用户交互感知度

概念及注意事项

微信小程序中,可以用 hover-class 属性来指定元素的点击态效果。但是在在使用中要注意,大部分组件是不支持该属性的。

  • 目前支持 hover-class 属性的组件有三个:view、button、navigator。
  • 不支持 hover-class 属性的组件,同时也不支持 hover-stop-propagation、hover-start-time、hover-stay-time 这三个属性。
  • 当 hover-class 的值为 none 时,组件上不会有任何点击态效果。

小程序hover-class点击态效果实现

注意事项

  • hover-class样式显示的原理是 点击时把样式加到class的样式中,冲突时,谁在后面就显示谁!
  • 当组件中没有任何指定的类时,直接使用 hover-class 就会起到相应的作用,但是当组件中已经指定了其他可能与 hover-class 冲突的类时,hover-class 无效
  • 将 hover-class 指定的类放在对应 wss 文件的最末尾,这样就不会被其他类所覆盖
  • 通常,当一个 view 组件中包含 image 等不支持 hover-class 的组件,但又需要在该组件上使用 hover-stop-propagation 属性的作用时,需要将不支持 hover-class 的组件用view、button 或 navigator 包裹起来

使用场景

1.列表页——详情页(点击跳转)

以新闻资讯为例,大部分应该都是这样的

小程序hover-class点击态效果实现

添加如下代码

//html
<view hover-class='wsui-btn__hover_list'>
  ...
</view>
//css
.wsui-btn__hover_list {
  opacity: 0.9;
  background: #f7f7f7;
}

点击效果如下图

小程序hover-class点击态效果实现

2.展示类表格列表(不触发跳转)

可设置hover-stay-time属性,突出显示触摸行或列

//html
<view hover-class='wsui-btn__hover_list' hover-stay-time="3000">
  ...
</view>
//css
.wsui-btn__hover_list {
  opacity: 0.9;
  background: #f7f7f7;
}

小程序hover-class点击态效果实现

3.提交类按钮

1种样式往往不能满足,各种形状的按钮,暂提供以下2种参考

.wsui-btn__hover_btn {
//圆形按钮
 opacity: 0.9;
 transform: scale(0.95, 0.95);
//长矩形按钮
 position: relative;
 top: 3rpx;
 left: 3rpx;
 box-shadow:0px 0px 8px rgba(0, 0, 0, .1) inset; 
}

小程序hover-class点击态效果实现

小程序hover-class点击态效果实现

上图以长矩形按钮为例,采用scale整体缩放效果显然不佳

小程序hover-class点击态效果实现

圆形按钮显然更合适对于同页面等待请求返回的按钮,配合 disabled 属性,使用加载中按钮的方案更为合理

4.有待考量的场景

选择类按钮,特指点击切换某些状态,会有及时的状态切换响应的,如遮罩层、active类导航图标类,首页的图标导航我认为以上无需添加hover类

特别说明
以上只是抛砖引玉,针对点击态,用户体验优化的示例
欢迎大家针对效果、使用场景、统一性等方面留言、评论作出优化和补充,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。
Javascript 相关文章推荐
jquery及原生js获取select下拉框选中的值示例
Oct 25 Javascript
JavaScript执行顺序详细介绍
Dec 04 Javascript
javascript RegExp 使用说明
May 21 Javascript
JS实现环形进度条(从0到100%)效果
Jul 05 Javascript
在Web项目中引入Jquery插件报错的完美解决方案(图解)
Sep 19 Javascript
深入理解JS继承和原型链的问题
Dec 17 Javascript
Vue2.0利用vue-resource上传文件到七牛的实例代码
Jul 28 Javascript
jackson解析json字符串,首字母大写会自动转为小写的方法
Dec 22 Javascript
JS数组求和的常用方法实例小结
Jan 07 Javascript
JQuery事件冒泡和默认行为代码实例
May 13 jQuery
微信小程序国际化探索实现(附源码地址)
May 20 Javascript
解决vue项目,npm run build后,报路径错的问题
Aug 13 Javascript
JS实现计算小于非负数n的素数的数量算法示例
Feb 26 #Javascript
vue使用Font Awesome的方法步骤
Feb 26 #Javascript
JS实现的杨辉三角【帕斯卡三角形】算法示例
Feb 26 #Javascript
create-react-app使用antd按需加载的样式无效问题的解决
Feb 26 #Javascript
JS实现电话号码的字母组合算法示例
Feb 26 #Javascript
JS实现的合并两个有序链表算法示例
Feb 25 #Javascript
JS实现判断有效的数独算法示例
Feb 25 #Javascript
You might like
PHP学习 运算符与运算符优先级
2008/06/15 PHP
基于PHP Web开发MVC框架的Smarty使用说明
2013/04/19 PHP
php数组遍历类与用法示例
2019/05/24 PHP
javaScript 数值型和字符串型之间的转换
2009/07/25 Javascript
15款优秀的jQuery导航菜单插件分享
2011/07/19 Javascript
TextArea设置MaxLength属性最大输入值的js代码
2012/12/21 Javascript
jquery多行滚动/向左或向上滚动/响应鼠标实现思路及代码
2013/01/23 Javascript
JQuery验证jsp页面属性是否为空(实例代码)
2013/11/08 Javascript
21个值得收藏的Javascript技巧
2014/02/04 Javascript
关闭浏览器输入框自动补齐 兼容IE,FF,Chrome等主流浏览器
2014/02/11 Javascript
js怎么覆盖原有方法实现重写
2014/09/04 Javascript
JQuery报错Uncaught TypeError: Illegal invocation的处理方法
2015/03/13 Javascript
比例尺、缩略图、平移缩放之百度地图添加控件方法
2015/08/03 Javascript
详解Vue.js入门环境搭建
2017/03/17 Javascript
关于react中组件通信的几种方式详解
2017/12/10 Javascript
vue中element组件样式修改无效的解决方法
2018/02/03 Javascript
在vue中使用express-mock搭建mock服务的方法
2018/11/07 Javascript
jQuery实现当拉动滚动条到底部加载数据的方法分析
2019/01/24 jQuery
node中使用log4js4.x版本记录日志的方法
2019/08/20 Javascript
JavaScript 自定义html元素鼠标右键菜单功能
2019/12/02 Javascript
用VsCode编辑TypeScript的实现方法
2020/05/07 Javascript
[03:48]2014DOTA2 TI专访71DK夺冠不靠小组赛高排名
2014/07/11 DOTA
[01:10:03]OG vs EG 2018国际邀请赛淘汰赛BO3 第三场 8.23
2018/08/24 DOTA
python字典键值对的添加和遍历方法
2016/09/11 Python
Python3实现并发检验代理池地址的方法
2016/09/18 Python
人生苦短我用python python如何快速入门?
2018/03/12 Python
Python测试线程应用程序过程解析
2019/12/31 Python
jupyter 使用Pillow包显示图像时inline显示方式
2020/04/24 Python
Python urllib.request对象案例解析
2020/05/11 Python
如何清空python的变量
2020/07/05 Python
使用OpenCV实现人脸图像卡通化的示例代码
2021/01/15 Python
美国中西部家用医疗设备商店:Med Mart(轮椅、踏板车、升降机等)
2019/04/26 全球购物
办公室年终个人自我评价
2013/10/28 职场文书
服务行业演讲稿
2014/09/02 职场文书
安阳殷墟导游词
2015/02/10 职场文书
单方投资意向书
2015/05/11 职场文书