VUE DOM加载后执行自定义事件的方法


Posted in Javascript onSeptember 07, 2018

最近想用vue做一个小东西,谁知道一开始就遇到了一个棘手的问题:

首先我想在页面加载前通过ajax请求页面展示所需要的信息,于是我在created钩子函数里面请求了我想要的数据

created:function(){
   var url="/indexitem";
   var _self=this;
   $.get(url,function(data){
   _self.items=data;
   });
   $.get('/banner',function(data){
   _self.banners=data;
   });
  }

这一步很顺利,接下来就是要将数据绑定到对应的元素中,我在这里需要将请求得到的图片地址绑定到轮播图对应的元素中,

我这里采用的是mui框架中提供的图片轮播(移动端,支持手势滑动),问题恰恰就这里:

<div id="slider" class="mui-slider" @click="greet()">
  <div class="mui-slider-group mui-slider-loop">
   <div class="mui-slider-item mui-slider-item-duplicate"><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" :style="{backgroundImage: 'url(' + banners[banners.length-1].src+ ')',backgroundSize:'cover'}"></a></div>
   <div class="mui-slider-item" v-for="cc in banners"><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" :style="{backgroundImage: 'url(' + cc.src+ ')',backgroundSize:'cover'}"></a></div>
   <div class="mui-slider-item mui-slider-item-duplicate"><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" :style="{backgroundImage:'url('+banners[0].src+')',backgroundSize:'cover'}"></a></div>
  </div>
  <div class="mui-slider-indicator">
   <div class="mui-indicator mui-active"></div>
   <div class="mui-indicator"></div>
   <div class="mui-indicator"></div>
   <div class="mui-indicator"></div>
  </div>
  </div>

我绑定完数据之后,发现轮播图失效了,因为我之前用原生js写的时候遇到过同样的问题,我当时的解决办法是等页面加载完成后重新进行滑动初始化,但是今天用vue我蒙了,试了很多生命周期函数也无法确保在页面加载完成后进行初始化。

vue.js更多的希望是通过数据绑定来代替直接通过dom操作,而vue并没有提供渲染完成的钩子。

所以我今天的解决办法是:setTimeout()

在实例化VUE对象后添加下面代码:

setTimeout(function(){
  console.log($('#slider').length);
  var gallery = mui('.mui-slider');
  gallery.slider({
   interval: 3000//自动轮播周期,若为0则不自动播放,默认为0;
  });
  },1000);

以上这篇VUE DOM加载后执行自定义事件的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
几个比较实用的JavaScript 测试及效验工具
Apr 18 Javascript
Jquery ajax传递复杂参数给WebService的实现代码
Aug 08 Javascript
PhotoShop给图片自动添加边框及EXIF信息的JS脚本
Feb 15 Javascript
Javascript简单改变表单元素背景的方法
Jul 15 Javascript
详解vue与后端数据交互(ajax):vue-resource
Mar 16 Javascript
ES6新特性之模块Module用法详解
Apr 01 Javascript
浅谈JS如何实现真正的对象常量
Jun 25 Javascript
基于BootStrap multiselect.js实现的下拉框联动效果
Jul 28 Javascript
基于vue.js的分页插件详解
Nov 27 Javascript
聊聊JS动画库 Velocity.js的使用
Mar 13 Javascript
图解javascript作用域链
May 27 Javascript
原生js+css调节音量滑块
Jan 15 Javascript
详解JavaScript事件循环机制
Sep 07 #Javascript
解决vue 引入子组件报错的问题
Sep 06 #Javascript
解决vue v-for 遍历循环时key值报错的问题
Sep 06 #Javascript
vue 解决循环引用组件报错的问题
Sep 06 #Javascript
vue slots 组件的组合/分发实例
Sep 06 #Javascript
React注册倒计时功能的实现
Sep 06 #Javascript
node.js 模块和其下载资源的镜像设置的方法
Sep 06 #Javascript
You might like
set_include_path在win和linux下的区别
2008/01/10 PHP
PHP四大安全策略
2014/03/12 PHP
如何批量清理系统临时文件(语言:C#、 C/C++、 php 、python 、java )
2016/02/01 PHP
Symfony2使用第三方库Upload制作图片上传实例详解
2016/02/04 PHP
laravel框架关于搜索功能的实现
2018/03/15 PHP
KindEditor在php环境下上传图片功能集成的方法示例
2020/07/20 PHP
一个收集图片的bookmarlet(js 刷新页面中的图片)
2010/05/27 Javascript
javascript中使用css需要注意的地方小结
2010/09/01 Javascript
JQuery 自定义CircleAnimation,Animate方法学习笔记
2011/07/10 Javascript
关于event.cancelBubble和event.stopPropagation()的区别介绍
2011/12/11 Javascript
javascript if条件判断方法小结
2014/05/17 Javascript
jQuery实现购物车计算价格功能的方法
2015/03/25 Javascript
跟我学习javascript创建对象(类)的8种方法
2015/11/20 Javascript
jQuery position() 函数详解以及jQuery中position函数的应用
2015/12/14 Javascript
详解Vue打包优化之code spliting
2018/04/09 Javascript
Vue中的异步组件函数实现代码
2018/07/20 Javascript
实例分析vue循环列表动态数据的处理方法
2018/09/28 Javascript
Selenium执行JavaScript脚本的方法示例
2020/12/31 Javascript
[55:35]VGJ.S vs Mski Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
[07:06]2018DOTA2国际邀请赛寻真——卫冕冠军Team Liquid
2018/08/10 DOTA
python实现域名系统(DNS)正向查询的方法
2016/04/19 Python
Tensorflow的可视化工具Tensorboard的初步使用详解
2018/02/11 Python
Python 3.x 安装opencv+opencv_contrib的操作方法
2018/04/02 Python
Django model反向关联名称的方法
2018/12/15 Python
Python选择网卡发包及接收数据包
2019/04/04 Python
一个基于canvas的移动端图片编辑器的实现
2020/10/28 HTML / CSS
DJI大疆无人机官方商城:全球领先的无人飞行器研发和生产商
2016/12/21 全球购物
中学生差生评语
2014/01/30 职场文书
不服从上级领导安排的检讨书
2014/09/14 职场文书
合伙购房协议样本
2014/10/06 职场文书
国情备忘录观后感
2015/06/04 职场文书
病假证明模板
2015/06/19 职场文书
经营场所使用证明
2015/06/19 职场文书
来探秘“德国中小企业”的成功之道
2019/07/26 职场文书
2019新员工试用期转正工作总结范文
2019/08/21 职场文书
总结一下关于在Java8中使用stream流踩过的一些坑
2021/06/24 Java/Android