解决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 ajax获取网站Alexa排名的代码
Dec 12 Javascript
类似GMAIL的Ajax信息反馈显示
Feb 16 Javascript
深入理解JavaScript系列(8) S.O.L.I.D五大原则之里氏替换原则LSP
Jan 15 Javascript
巧用replace将文字表情替换为图片
Apr 17 Javascript
js表格排序实例分析(支持int,float,date,string四种数据类型)
May 06 Javascript
FullCalendar日历插件应用之数据展现(一)
Dec 23 Javascript
无需 Flash 使用 jQuery 复制文字到剪贴板
Apr 26 Javascript
node.js的exports、module.exports与ES6的export、export default深入详解
Oct 26 Javascript
JS解惑之Object中的key是有序的么
May 06 Javascript
vue路由守卫及路由守卫无限循环问题详析
Sep 05 Javascript
在vue中对数组值变化的监听与重新响应渲染操作
Jul 17 Javascript
5种方法告诉你如何使JavaScript 代码库更干净
Sep 15 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
thinkphp3.2.2实现生成多张缩略图的方法
2014/12/19 PHP
PHP简单实现模拟登陆功能示例
2017/09/15 PHP
指定js可访问其它域名的cookie的方法
2007/09/18 Javascript
js实现页面打印功能实例代码(附去页眉页脚功能代码)
2009/12/15 Javascript
JQuery入门——事件切换之hover()方法应用介绍
2013/02/05 Javascript
SuperSlide2实现图片滚动特效
2014/06/20 Javascript
jQuery分组选择器用法实例
2014/12/23 Javascript
详解js中class的多种函数封装方法
2016/01/03 Javascript
原生js实现焦点轮播图效果
2017/01/12 Javascript
JavaScript Base64 作为文件上传的实例代码解析
2017/02/14 Javascript
Javascript中类式继承和原型式继承的实现方法和区别之处
2017/04/25 Javascript
详解vue-router和vue-cli以及组件之间的传值
2017/07/04 Javascript
老生常谈js数据类型
2017/08/03 Javascript
如何手动实现es5中的bind方法详解
2018/12/07 Javascript
玩转Koa之koa-router原理解析
2018/12/29 Javascript
html+jQuery实现拖动滑块图片拼图验证码插件【移动端适用】
2019/09/10 jQuery
微信小程序 获取手机号 JavaScript解密示例代码详解
2020/05/14 Javascript
Vue实现多页签组件
2021/01/14 Vue.js
python 合并文件的具体实例
2013/08/08 Python
python友情链接检查方法
2015/07/08 Python
python决策树之C4.5算法详解
2017/12/20 Python
Python时间和字符串转换操作实例分析
2019/03/16 Python
Python matplotlib学习笔记之坐标轴范围
2019/06/28 Python
python代码 FTP备份交换机配置脚本实例解析
2019/08/01 Python
python Paramiko使用示例
2020/09/21 Python
迪卡侬英国官网:Decathlon英国
2017/04/08 全球购物
应届毕业生求职信
2013/11/30 职场文书
银行求职自荐信
2014/06/30 职场文书
购房意向书
2014/08/30 职场文书
村长党的群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
二审答辩状格式
2015/05/22 职场文书
干货:如何写好工作总结报告!
2019/05/10 职场文书
慰问信的写作格式及范文!
2019/06/24 职场文书
辞职报告(范文三篇)
2019/08/27 职场文书
CSS3通过var()和calc()函数实现动画特效
2021/03/30 HTML / CSS
MySQL Innodb关键特性之插入缓冲(insert buffer)
2021/04/08 MySQL