javascript - Vue用原生写轮播图,为什么一直没效果!求大神指点是不是哪里写错了!!!!
怪我咯
怪我咯 2017-04-11 13:19:44
[JavaScript讨论组]

pic++:只执行一次,打印了1.然后定时器一下子全部执行完了,还有什么要把方法写在mounted里面。而不是在created里面,如果写在created会报错,钩子错误,然后元素获取不到

请输入代码





export function animate(elem, target) {
  var leader,
      step,
      surplus;

  if (elem.time) {
    clearInterval(elem.time);
  }
  elem.time = setInterval(function () {
    //当前盒子距离左边的距离
    leader = elem.offsetLeft;
    step = 10;
    //预定距离小于设定距离
    if (target < leader) {
      step = -step;
    }
    //剩余距离
    surplus = Math.abs(target - leader);
    //判断剩余距离和设定距离
    if (surplus >= Math.abs(step)) {
      leader = leader + step;
      elem.style.left = leader + 'px';
    } else {
      //到达终点清除定时器
      clearInterval(elem.time);
      elem.style.left = target + 'px';
    }
  }, 16);
}
请输入代码
怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(1)
巴扎黑

created只是成了dom字符串并没有挂在到目标元素中,这时候操作dom是找不到的?

mounted中dom字符串已经插入到目标元素中, 可以操作dom

https://cn.vuejs.org/v2/guide...生命周期图示

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号