解决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 相关文章推荐
js给dropdownlist添加选项的小例子
Mar 04 Javascript
JavaScript和CSS通过expression实现Table居中显示
Jun 28 Javascript
基于Arcgis for javascript实现百度地图ABCD marker的效果
Sep 12 Javascript
Javascript中的数组常用方法解析
Jun 17 Javascript
js获取地址栏中传递的参数(两种方法)
Feb 08 Javascript
基于bootstrap写的一点localStorage本地储存
Nov 21 Javascript
node.js中路由,中间件,ge请求和post请求的参数详解
Dec 26 Javascript
Node.js实现mysql连接池使用事务自动回收连接的方法示例
Feb 03 Javascript
使用layui实现的左侧菜单栏以及动态操作tab项方法
Sep 10 Javascript
js Math数学简单使用操作示例
Mar 13 Javascript
js删除对象中的某一个字段的方法实现
Jan 11 Javascript
vue实力踩坑之push当前页无效
Apr 10 Vue.js
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制作新闻系统的思路
2006/10/09 PHP
jQuery ul标签下拉菜单演示代码
2010/12/11 Javascript
仅IE支持clearAttributes/mergeAttributes方法使用介绍
2012/05/04 Javascript
实现动画效果核心方式的js代码
2013/09/27 Javascript
iframe窗口高度自适应的又一个巧妙实现思路
2014/04/04 Javascript
Javascript中的delete操作符详细介绍
2014/06/06 Javascript
Nodejs异步回调的优雅处理方法
2014/09/25 NodeJs
javascript实现倒计时并弹窗提示特效
2015/06/05 Javascript
JS验证 只能输入小数点,数字,负数的实现方法
2016/10/07 Javascript
教你一步步用jQyery实现轮播器
2016/12/18 Javascript
JS设置随机出现2个数字的实例代码
2017/07/19 Javascript
你不知道的Vue技巧之--开发一个可以通过方法调用的组件(推荐)
2019/04/15 Javascript
JavaScript实现单英文金山打字通
2020/07/24 Javascript
jQuery子选择器与可见性选择器实例分析
2019/06/28 jQuery
vue实现五子棋游戏
2020/05/28 Javascript
Tensorflow 查看变量的值方法
2018/06/14 Python
python PrettyTable模块的安装与简单应用
2019/01/11 Python
不归路系列:Python入门之旅-一定要注意缩进!!!(推荐)
2019/04/16 Python
numpy.linspace函数具体使用详解
2019/05/27 Python
Python3基础教程之递归函数简单示例
2019/06/07 Python
pandas.read_csv参数详解(小结)
2019/06/21 Python
Pandas透视表(pivot_table)详解
2019/07/22 Python
python元组的概念知识点
2019/11/19 Python
Python函数参数类型及排序原理总结
2019/12/19 Python
python的help函数如何使用
2020/06/11 Python
详解使用scrapy进行模拟登陆三种方式
2021/02/21 Python
一款纯css3实现的tab选项卡的实列教程
2014/12/11 HTML / CSS
Charles & Colvard官网:美国莫桑石品牌
2019/06/05 全球购物
外语系大学生自荐信范文
2014/03/01 职场文书
激情洋溢的毕业生就业求职信
2014/03/15 职场文书
《一个小村庄的故事》教学反思
2014/04/13 职场文书
离退休人员聘用协议书
2014/11/24 职场文书
2014年工程部工作总结
2014/11/25 职场文书
2015新年寄语大全
2014/12/08 职场文书
Python连接Postgres/Mysql/Mongo数据库基本操作大全
2021/06/29 Python
利用Sharding-Jdbc进行分库分表的操作代码
2022/01/22 Java/Android