微信小程序dom操作的替代思路实例分析


Posted in Javascript onDecember 06, 2018

本文实例讲述了微信小程序dom操作的替代思路。分享给大家供大家参考,具体如下:

微信小程序无法操作dom,这意味着之前js中的各种习惯方法必须换一种思路实现

在尝试了几类情况后,发现部分情况下可以用{{}}变量绑定来实现效果。

比如:

一、实现view的显示和隐藏

在js中的data设置变量 bottomHidden1:"block"

然后在wxml中的view中设置<view class="bottom1" style="display:{{bottomHidden1}}" > </view>

在其它我们需要的地方使用bindtap等绑定事件,js中定义该事件的function,使用this.setData修改bottomHidden1变量为none或者block,实现对上文中的bottom1进行显示/隐藏控制

二、实现input中的 placeholder在获取焦点时清空,失去焦点时显示

1. 在js中,data中设置变量 priceHodler:"请输入价格",

2. 我们可以设置两个function控制变量priceHodler的值(此处添加了一种的方法实现输入框中删除图标的显示和消失,所以在data中设置了变量  clearImg)

displayImg:function(){
  var imgDisplay="block";
  var holderDisplay ="";
  this.setData({
   clearImg: imgDisplay,
   priceHodler: holderDisplay,
  })
 },
 hiddenImg:function(){
  var imgHidden = "none";
  var holderHidden = "请输入价格";
  this.setData({
   clearImg: imgHidden,
   priceHodler: holderHidden,
  })
 },

附:输入框内容删除图标的功能实现(在js的data中也设置了变量 usdValue:null,):

doClearText:function(){
  this.setData({
   usdValue: null,
  })
 },

3. 在wxml中添加这个input

<view class="input_view">
  <input type="text" placeholder="{{priceHodler}}" placeholder-class="input-placeholder" class="price_usd" id="price_usd" name="price_usd" value="{{usdValue}}" bindfocus="displayImg" bindblur="hiddenImg"/>
</view>
<label class="clear_view" bindtap="doClearText">
  <image style="display:{{clearImg}};" class="clear_img" src="../img/search_close.png"></image>
</label>

这里将js的data中的priceHodler绑定给了placeholder,clearImg绑定在image的display属性上,bindfocus="displayImg" bindblur="hiddenImg"会控制前两个变量的值的变化, bindtap="doClearText"会控制input的value的变化

希望本文所述对大家微信小程序开发有所帮助。

Javascript 相关文章推荐
javascript OFFICE控件测试代码
Dec 08 Javascript
jquery ajax例子返回值详解
Sep 11 Javascript
javascript分页代码(当前页码居中)
Sep 20 Javascript
mailto的使用技巧分享
Dec 21 Javascript
jquery easyui 对于开始时间小于结束时间的判断示例
Mar 22 Javascript
JavaScript实现网页截图功能
Oct 16 Javascript
javascript函数自动执行常用方法汇总
Mar 28 Javascript
JS实现加载和读取XML文件的方法详解
Apr 24 Javascript
深入理解node.js之path模块
May 03 Javascript
使用 Vue.js 仿百度搜索框的实例代码
May 09 Javascript
vue一个页面实现音乐播放器的示例
Feb 06 Javascript
vue 权限认证token的实现方法
Jul 17 Javascript
详解Webstorm 下的Angular2.0开发之路(图文)
Dec 06 #Javascript
微信小程序实现通过js操作wxml的wxss属性示例
Dec 06 #Javascript
初探Vue3.0 中的一大亮点Proxy的使用
Dec 06 #Javascript
vue中v-for通过动态绑定class实现触发效果
Dec 06 #Javascript
vue通过指令(directives)实现点击空白处收起下拉框
Dec 06 #Javascript
Vue-CLI3.x 设置反向代理的方法
Dec 06 #Javascript
JavaScript中引用vs复制示例详析
Dec 06 #Javascript
You might like
网站当前的在线人数
2006/10/09 PHP
怎样在PHP中通过ADO调用Asscess数据库和COM程序
2006/10/09 PHP
PHP图片等比缩放类SimpleImage使用方法和使用实例分享
2014/04/10 PHP
PHP获取数组最后一个值的2种方法
2015/01/21 PHP
PHP 实现文件压缩解压操作的方法
2019/06/14 PHP
PHP创建XML的方法示例【基于DOMDocument类及SimpleXMLElement类】
2019/09/10 PHP
计算新浪Weibo消息长度(还可以输入119字)
2013/07/02 Javascript
Jquery创建层显示标题和内容且随鼠标移动而移动
2014/01/26 Javascript
js+cookies实现悬浮购物车的方法
2015/05/25 Javascript
使用requestAnimationFrame实现js动画性能好
2015/08/06 Javascript
JQuery插件Marquee.js实现无缝滚动效果
2016/04/26 Javascript
浅谈Node.js:fs文件系统模块
2016/12/08 Javascript
jQuery使用正则验证15/18身份证的方法示例
2017/04/27 jQuery
利用JS制作万年历的方法
2017/08/16 Javascript
基于javascript 显式转换与隐式转换(详解)
2017/12/15 Javascript
浅谈vue引用静态资源需要注意的事项
2018/09/28 Javascript
解决IOS端微信H5页面软键盘弹起后页面下方留白的问题
2019/06/05 Javascript
js中值引用和地址引用实例分析
2019/06/21 Javascript
jquery制作的移动端购物车效果完整示例
2020/02/24 jQuery
package.json中homepage属性的作用详解
2020/03/11 Javascript
ant design的table组件实现全选功能以及自定义分页
2020/11/17 Javascript
[02:58]魔廷新尊——痛苦女王至宝语音台词节选
2020/06/14 DOTA
[51:17]完美世界DOTA2联赛循环赛Inki vs DeMonsTer 第二场 10月30日
2020/10/31 DOTA
[02:50]【扭转乾坤,只此一招】DOTA2永雾林渊版本开启新篇章
2020/12/22 DOTA
python 查找文件夹下所有文件 实现代码
2009/07/01 Python
Python引用计数操作示例
2018/08/23 Python
基于python判断目录或者文件代码实例
2019/11/29 Python
从Pytorch模型pth文件中读取参数成numpy矩阵的操作
2021/03/04 Python
英国最大的专业户外零售商:Mountain Warehouse
2018/06/06 全球购物
材料采购员岗位职责
2013/12/17 职场文书
学习心得体会
2014/01/01 职场文书
道路交通安全实施方案
2014/03/12 职场文书
学校创先争优活动总结
2014/08/28 职场文书
工作保证书怎么写
2015/02/28 职场文书
全国助残日活动总结
2015/05/11 职场文书
撤回我也能看到!教你用Python制作微信防撤回脚本
2021/06/11 Python