解决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 相关文章推荐
IE bug table元素的innerHTML
Jan 11 Javascript
javascript 多浏览器 事件大全
Mar 23 Javascript
jQuery ul标签下拉菜单演示代码
Dec 11 Javascript
仅IE不支持setTimeout/setInterval函数的第三个以上参数
May 25 Javascript
jQuery $.extend()用法总结
Jun 15 Javascript
jqTransform美化表单
Oct 10 Javascript
详解AngularJS Filter(过滤器)用法
Dec 28 Javascript
学习使用jQuery表单验证插件和日历插件
Feb 13 Javascript
基于Bootstrap 3 JQuery及RegExp的表单验证功能
Feb 16 Javascript
原生JavaScript实现日历功能代码实例(无引用Jq)
Sep 23 Javascript
vue-router结合vuex实现用户权限控制功能
Nov 14 Javascript
Javascript执行上下文顺序的深入讲解
Nov 04 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编码规范之注释和文件结构说明
2010/07/09 PHP
PHP写杨辉三角实例代码
2011/07/17 PHP
PHP 实现判断用户是否手机访问
2015/01/21 PHP
微信公众号支付之坑:调用支付jsapi缺少参数 timeStamp等错误解决方法
2016/01/12 PHP
php查看一个变量的占用内存的实例代码
2020/03/29 PHP
javascript基础第一章 JavaScript与用户端
2010/07/22 Javascript
基于jquery的lazy loader插件实现图片的延迟加载[简单使用]
2011/05/07 Javascript
浅析四种常见的Javascript声明循环变量的书写方式
2015/10/14 Javascript
Sortable.js拖拽排序使用方法解析
2016/11/04 Javascript
JavaScript两个变量交换值的实现方法
2017/03/01 Javascript
layui分页效果实现代码
2017/05/19 Javascript
jQuery实现的3D版图片轮播示例【滑动轮播】
2019/01/18 jQuery
详解关于React-Router4.0跳转不置顶解决方案
2019/05/10 Javascript
vue中el-input绑定键盘按键(按键修饰符)
2020/07/22 Javascript
Python写的贪吃蛇游戏例子
2014/06/16 Python
python爬虫之urllib3的使用示例
2018/07/09 Python
对PyQt5中的菜单栏和工具栏实例详解
2019/06/20 Python
Python3 执行系统命令并获取实时回显功能
2019/07/09 Python
Python实现的企业粉丝抽奖功能示例
2019/07/26 Python
解决Jupyter因卸载重装导致的问题修复
2020/04/10 Python
pyinstaller打包成无控制台程序时运行出错(与popen冲突的解决方法)
2020/04/15 Python
CSS中越界问题的经典解决方案【推荐】
2016/04/19 HTML / CSS
html5 移动端视频video的android兼容(去除播放控件、全屏)
2020/03/26 HTML / CSS
日本最大级玩偶手办购物:あみあみ Amiami
2018/04/23 全球购物
美国健康和保健平台:healtop
2020/07/02 全球购物
科室工作个人总结的自我评价
2013/10/29 职场文书
对孩子的寄语
2014/04/09 职场文书
体育之星事迹材料
2014/05/11 职场文书
学校宣传标语
2014/06/18 职场文书
公共场所禁烟标语
2014/06/25 职场文书
学雷锋的心得体会
2014/09/04 职场文书
解决Golang time.Parse和time.Format的时区问题
2021/04/29 Golang
告别网页搜索!教你用python实现一款属于自己的翻译词典软件
2021/06/03 Python
MySQL外键约束(FOREIGN KEY)案例讲解
2021/08/23 MySQL
Java Spring 控制反转(IOC)容器详解
2021/10/05 Java/Android
一篇文章看懂MySQL主从复制与读写分离
2021/11/07 MySQL