结构-行为-样式-requireJs实现图片轮播插件
最近工作需要,就自己写了一个图片轮播插件,不过想到要集成到框架中,于是又用RequireJs改了一遍。
主要文件:
- style.css
- jquery-1.11.1.min.js
- require.js
- viewpager.js
- view.js
- index.html
viewpager.js:
define(['jquery'], function ($) {
function ViewPager(setting) {
var myset = {
index: 0
};
setting = $.extend({}, myset, setting);
this.init(setting);
};
ViewPager.prototype = {
init: function (s) {
this.id = s.id;
this.list = $("#" + s.id).find("li");
this.index = s.index;
this.isAuto = s.isAuto;
this.renderUI();
this.bindUI();
}
, renderUI: function () {
var inHtml = $('<div class="prev"><span class="prev_icon"></span></div><div class="next"><span class="next_icon"></span></div>');
//选择器到指定的ID
//inHtml.appendTo("body ul#viewpager");
$("#" + this.id).append(inHtml);
}
, bindUI: function () {
var that = this;
if (that.isAuto) {
setInterval(function () {
that.prev();
}, 3000);
}
$("#" + this.id).delegate(".prev", "click", function () {
that.prev();
});
$("#" + this.id).delegate(".next", "click", function () {
that.next();
});
}
, prev: function () {
$(this.list[this.index]).animate({
opacity: 'hide'
}, 500);
if (this.index < this.list.length - 1) {
this.index++;
this.picgo();
}
else {
this.index = 0;
this.picgo();
}
}
, next: function () {
$(this.list[this.index]).animate({
opacity: 'hide'
}, 500);
if (this.index > 0) {
this.index--;
this.picgo();
}
else {
this.index = this.list.length - 1;
this.picgo();
}
}
, picgo: function () {
$(this.list[this.index]).css({
"left": "0px"
});
$(this.list[this.index]).animate({
opacity: 'show'
}, 800);
}
};
return {
ViewPager: ViewPager
}
});
view.js
require.config({
paths: {
"jquery": "js/jquery-1.11.1.min"
, "viewpager": "js/viewpager"
, "abstract": "js/abstract"
}
});
require(['jquery', 'viewpager'], function ($, v) {
new v.ViewPager({
"id": "viewpager"
, "isAuto": true
});
new v.ViewPager({
"id": "viewpager1"
});
});
index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Component Learn</title>
<link rel="stylesheet" href="http://mj-staples.blog.163.com/blog/css/style.css" type="text/css"> </head>
<body>
<div class="view-main">
<ul id="viewpager">
<li class="active"><img src="http://mj-staples.blog.163.com/blog/img/0.jpg" alt="0.jpg" /></li>
<li><img src="http://mj-staples.blog.163.com/blog/img/1.jpg" alt="1.jpg" /></li>
<li><img src="http://mj-staples.blog.163.com/blog/img/2.jpg" alt="2.jpg" /></li>
<li><img src="http://mj-staples.blog.163.com/blog/img/3.jpg" alt="3.jpg" /></li>
<li><img src="http://mj-staples.blog.163.com/blog/img/4.jpg" alt="4.jpg" /></li>
</ul>
</div>
<hr>
<div class="view-main">
<ul id="viewpager1">
<li class="active"><img src="http://mj-staples.blog.163.com/blog/img/0.jpg" alt="0.jpg" /></li>
<li><img src="http://mj-staples.blog.163.com/blog/img/1.jpg" alt="1.jpg" /></li>
<li><img src="http://mj-staples.blog.163.com/blog/img/2.jpg" alt="2.jpg" /></li>
<li><img src="http://mj-staples.blog.163.com/blog/img/3.jpg" alt="3.jpg" /></li>
<li><img src="http://mj-staples.blog.163.com/blog/img/4.jpg" alt="4.jpg" /></li>
</ul>
</div>
<script type="text/javascript" data-main="view" src="http://mj-staples.blog.163.com/blog/js/require.js"></script>
</body>
</html>
结构-行为-样式-requireJs实现图片轮播插件的更多相关文章
- PgwSlideshow-基于Jquery的图片轮播插件
0 PgwSlideshow简介 PgwSlideshow是一款基于Jquery的图片轮播插件,基本布局分为上下结构,上方为大图轮播区域,用户可自定义图片轮播切换的间隔时间,也可以通过单击左右方向按键 ...
- Javascript和jQuery WordPress 图片轮播插件, 内容滚动插件,前后切换幻灯片形式显示
用于在有限的网页空间内展示一组产品图片或者照片,同时还有非常吸引人的动画效果.本文向大家推荐12款实用的 jQuery 图片轮播效果插件,帮助你在你的项目中加入一些效果精美的图片轮播效果,希望这些插件 ...
- 推荐:图片轮播插件Nivo Slider
因为项目需要一款切换样式多一些的轮播插件,不经意找到了NivoSlider,非常好用,比bootstrap要好用,而且样式丰富.值得注意的是,这款插件是在MIT协议下免费的. ...
- 纯js写图片轮播插件
最近终于写成了自己创作的图片轮播插件,使用原生js编写.与目前网上流行的轮播插件相比,功能和效果稍弱,但是使用起来相当方便. 先看html代码 <!DOCTYPE html> <ht ...
- 图片轮播插件Nivo Slider
推荐:图片轮播插件Nivo Slider 因为项目需要一款切换样式多一些的轮播插件,不经意找到了NivoSlider,非常好用,比bootstrap要好用,而且样式丰富.值得注意的是, ...
- AdPlayBanner:功能丰富、一键式使用的图片轮播插件
AdPlayBanner:功能丰富.一键式使用的图片轮播插件 AdPlayBanner是一个Android平台基于ViewPager实现的轮播图插件,主要用以自动或者手动地播放轮播图,提供了Fresc ...
- 12款经典的白富美型—jquery图片轮播插件—前端开发必备
图片轮播是网站中的常用功能,用于在有限的网页空间内展示一组产品图片或者照片,同时还有非常吸引人的动画效果.本文向大家推荐12款实用的 jQuery 图片轮播效果插件,帮助你在你的项目中加入一些效果精美 ...
- Nivo Slider - 世界上最棒的 jQuery 图片轮播插件
Nivo Slider 号称世界上最棒的图片轮播插件,有独立的 jQuery 插件和 WordPress 插件两个版本.目前下载量已经突破 1,800,000 次!jQuery 独立版本的插件主要有如 ...
- 图片轮播插件-carouFredSel
carouFredSel图片轮播插件基于Jquery,比较常规的轮播插件,支持滚轮及键盘左右按键,加入其它插件可实现更加复杂的特效. 主页地址:http://caroufredsel.dev7stud ...
随机推荐
- 苹果iOS苹果公司的手机用户都有权索赔
大家知道.手机中的操作系统(基础软件)存储在手机固(firm,ware)之中,一般而言,手机用户自己是不能修改的. 苹果iOS手机的系统后门(服务程序)也存储在手机固件之中.手机用户自己是无法删除的. ...
- IE低版本下实现html5的placeholder(表单提示)功能
placeholder 属性提供可描述输入字段预期值的提示信息(hint). 该提示会在输入字段为空时显示,并会在字段获得焦点时消失. 注释:placeholder 属性适用于以下的 <inpu ...
- Scala开发环境搭建与资源推荐
Scala开发环境搭建与资源推荐 本文介绍了Scala的开发环境,包括SDK.IDE的设置.常用资源列表等.Scala是一门静态语言,很有可能就是Java的继承者. AD: 2014WOT全球软件技术 ...
- 使用rem设计移动端自适应页面三(转载)
使用rem 然后根据媒体查询实现自适应.跟使用JS来自适应也是同个道理,不过是js更精确一点.使用媒体查询: html { font-size: 62.5% } @media only screen ...
- BitMap画图
package com.example.examples_05_07; import android.content.Context; import android.graphics.Bitmap; ...
- Node.js基础知识
Node.js入门 Node.js Node.js是一套用来编写高性能网络服务器的JavaScript工具包,一系列的变化由此开始.比较独特的是,Node.js会假设在POSIX环境下运行 ...
- HDU 4630、BOJ 某题
两道离线线段树. 比赛时候没想到.... 扫描数组,i从1到n,线段树维护从1到i每一个约数(1~50000)的出现的最近位置,线段树存储的是约数的最大值 #include<cstdio> ...
- android判断网络的类型
转自:http://blog.csdn.net/xxxsz/article/details/8199031 判断网络类型是wifi,还是3G,还是2G网络 对不同的网络进行不同的处理,现将判断方法整理 ...
- 实现Client Credentials Grant
[OAuth]基于DotNetOpenAuth实现Client Credentials Grant Client Credentials Grant是指直接由Client向Authorizatio ...
- 线程:Semaphore实现信号灯
Semaphore是一个计数的信号量,可以维护当前访问自身的线程个数,并提供了同步机制.使用Semaphore可以控制同时访问资源的线程个数,例如实现一个文件允许的线程访问数.打个通俗的比喻,Sema ...