解决Angular.js中使用Swiper插件不能滑动的问题


Posted in Javascript onFebruary 26, 2018

我们都知道swiper是交互体验十分好的轮播插件

但是通过angular(ng-repeat)循环出来的swiper不能轮播的解决方案

通常我们都是通过以下方法来执行:

html

<div class="swiper-container" ng-controller="swiperController">
 <div class="swiper-wrapper">
  <div class="swiper-slide" ng-repeat="informarion in imgSrcs">
   <img ng-src="{{informarion.sliderSrc}}" />
  </div>
 </div>
 <!-- Add Pagination -->
 <div class="swiper-pagination"></div>
 <!-- Add Arrows -->
</div>

js

var myapp=angular.module("myApp",[]);
 //轮播图的控制器
 myapp.controller("swiperController",function($scope,$http){
  //请求轮播图路径
  $http({
   method: 'post',
   url: 'json/myJson.json'
  }).then(function successCallback(response) {
   $scope.imgSrcs = response.data.sites;
  }, function errorCallback(response) {
   // 请求失败执行代码
  });
 });

可是还是不行,注意:如果是在json中获取数据,要把轮播js代码写在获取数据中,因为他是先获取数据才执行轮播的,如果你把他放在外部,实行轮播数据获取不到。

所以解决方案便是将swiper的初始化方法放到$http请求里面执行,

将如下代码加到function successCallback()方法里面即可实现轮播

var swiper = new Swiper('.swiper-container', {//重置轮播加载方法
    pagination: '.swiper-pagination',
    slidesPerView: 1,
    paginationClickable: true,
    spaceBetween: 30,
    keyboardControl: true,
    nextButton: '.swiper-button-next',
    prevButton: '.swiper-button-prev',
    observer:true,//修改swiper自己或子元素时,自动初始化swiper
    observeParents:true//修改swiper的父元素时,自动初始化swiper
   });

完整的js代码如下:

var myapp=angular.module("myApp",[]);
 //轮播图的控制器
 myapp.controller("swiperController",function($scope,$http){
  //请求轮播图路径
  $http({
   method: 'post',
   url: 'json/myJson.json'
  }).then(function successCallback(response) {
   $scope.imgSrcs = response.data.sites;
   var swiper = new Swiper('.swiper-container', {//重置轮播加载方法
    pagination: '.swiper-pagination',
    slidesPerView: 1,
    paginationClickable: true,
    spaceBetween: 30,
    keyboardControl: true,
    nextButton: '.swiper-button-next',
    prevButton: '.swiper-button-prev',
    observer:true,//修改swiper自己或子元素时,自动初始化swiper
    observeParents:true//修改swiper的父元素时,自动初始化swiper
   });
  }, function errorCallback(response) {
   // 请求失败执行代码
  });
 });

以上这篇解决Angular.js中使用Swiper插件不能滑动的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
基于jQuery的弹出消息插件 DivAlert之旅(一)
Apr 01 Javascript
分享一个自己写的table表格排序js插件(高效简洁)
Oct 29 Javascript
基于jquery的has()方法以及与find()方法以及filter()方法的区别详解
Apr 26 Javascript
animate动画示例(泪奔的小孩)及stop和delay的使用
May 06 Javascript
Javascript中常见的校验如域名、手机、邮箱等等
Jan 02 Javascript
javascript 小数取整简单实现方式
May 30 Javascript
javascript控制在光标位置插入文字适合表情的插入
Jun 09 Javascript
Javascript中常用的检测方法小结
Oct 08 Javascript
JavaScript定义全局对象的方法示例
Jan 12 Javascript
Bootstrap 树控件使用经验分享(图文解说)
Nov 06 Javascript
mpvue 如何使用腾讯视频插件的方法
Jul 16 Javascript
详解小程序输入框闪烁及重影BUG解决方案
Aug 31 Javascript
Angular5中调用第三方js插件的方法
Feb 26 #Javascript
angular2中使用第三方js库的实例
Feb 26 #Javascript
vue 子组件向父组件传值方法
Feb 26 #Javascript
vue2 前端搜索实现示例
Feb 26 #Javascript
vue使用$emit时,父组件无法监听到子组件的事件实例
Feb 26 #Javascript
vue的全局提示框组件实例代码
Feb 26 #Javascript
Angular4 ElementRef的应用
Feb 26 #Javascript
You might like
php木马攻击防御之道
2008/03/24 PHP
8个出色的WordPress SEO插件收集
2011/02/26 PHP
PHP中魔术变量__METHOD__与__FUNCTION__的区别
2014/09/29 PHP
php支付宝接口用法分析
2015/01/04 PHP
PHP中COOKIES使用示例
2015/07/26 PHP
php遍历替换目录下文件指定内容的方法
2016/11/10 PHP
php 猴子摘桃的算法
2017/06/20 PHP
Django中的cookie与session操作实例代码
2017/08/17 PHP
根据IP的地址,区分不同的地区,查看不同的网站页面的js代码
2013/02/26 Javascript
处理及遍历XML文档DOM元素属性及方法整理
2013/08/23 Javascript
JavaScript中对象property的读取和写入方法介绍
2014/12/30 Javascript
Javascript OOP之面向对象
2016/07/31 Javascript
vue系列之动态路由详解【原创】
2017/09/10 Javascript
vue2.0 移动端实现下拉刷新和上拉加载更多的示例
2018/04/23 Javascript
jquery ajaxfileuplod 上传文件 essyui laoding 效果【防止重复上传文件】
2018/05/26 jQuery
layui添加动态菜单与选项卡 AJAX请求的例子
2019/09/25 Javascript
vue根据条件不同显示不同按钮的操作
2020/08/04 Javascript
详细分析JavaScript中的深浅拷贝
2020/09/17 Javascript
[14:36]2014 DOTA2国际邀请赛中国区预选赛5.21 Orenda VS NE
2014/05/22 DOTA
[48:39]Ti4主赛事胜者组第一天 EG vs NEWBEE 2
2014/07/19 DOTA
[44:30]完美世界DOTA2联赛PWL S2 GXR vs Magma 第一场 11.25
2020/11/26 DOTA
Python最长公共子串算法实例
2015/03/07 Python
python+logging+yaml实现日志分割
2019/07/22 Python
Flask中endpoint的理解(小结)
2019/12/11 Python
浅谈pytorch中torch.max和F.softmax函数的维度解释
2020/06/28 Python
Python Map 函数的使用
2020/08/28 Python
使用CSS Grid布局实现网格的流动
2014/12/30 HTML / CSS
Brasty波兰:香水、化妆品、手表网上商店
2019/04/15 全球购物
SQL里面IN比较快还是EXISTS比较快
2012/07/19 面试题
母亲80寿诞答谢词
2014/01/16 职场文书
小学二年级学生评语
2014/04/21 职场文书
2014年新生军训方案
2014/05/01 职场文书
收银员岗位职责
2015/02/03 职场文书
2016年秋季运动会广播稿
2015/12/21 职场文书
《暗黑破坏神2:重制版》本周进行第一轮A测 目前可官网进行申请报名
2021/04/07 其他游戏
Ajax常用封装库——Axios的使用
2021/05/08 Javascript