demo.html

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>Document</title>
<script src="lib/jquery.js"></script>
<script src="lib/iScroll.js"></script>
<script src="js/demo8.js"></script>
<style>
/******************reset****************************/
body{font-family: 'Microsoft Yahei';background: #eee;}
*{margin:0;padding: 0;}
h1,h2,h3,h4,h5,h6{font-size: 100%;font-weight: normal;font-style: normal;}
ul li{list-style: none;}
/*****************common*****************************/
.mb20{margin-bottom: 20px;}
.clearfix{*zoom:1;}
.clearfix:before,
.clearfix:after{display: table;line-height: 0;content: '';}
.clearfix:after{clear: both;} /******************layout****************************/
.header{position: absolute;top: 0;height: 30px;line-height: 1.5;text-align: center;width: 100%;background: brown;color: white;}
.section{position: absolute;top: 30px;bottom: 30px;overflow: auto;width: 100%;}
.footer{position: absolute;bottom: 0;height: 30px;line-height: 1.5;text-align: center;width: 100%;background: brown;color: white;}
.app-wrapper{height: 100%;} /**
* 滚动图片
*/
.prod-scro-list{background: #fff;padding: 10px;}
.prod-wrapper{width: 300px;background: pink;margin: 0 auto;}
.prod-wrapper .prod-container{width: 1200px;}
.prod-wrapper .prod-container ul {}
.prod-wrapper .prod-container ul li{width: 280px;height: 100px;padding: 10px;float: left;} .scro-nav-bar {width: 100px;margin: 0 auto;}
.scro-nav-bar ul {}
.scro-nav-bar ul li{float: left;width: 23px;text-align: center;display: block;}
.scro-nav-bar ul li.active{background: brown;color: white;}
/**
* 产品详情介绍
*/
.prod-detail-intr{background: #fff;}
.prod-detail-intr article{padding: 20px;} /**
* 产品规格
*/
.prod-format{background: #fff;padding: 10px;}
.prod-format-wrapper{overflow: hidden;width: 300px;background: pink;margin: 0 auto;}
.prod-format-wrapper .prod-format-list{overflow: hidden;width: 900px;}
.prod-format-wrapper .prod-format-list ul{}
.prod-format-wrapper .prod-format-list ul li{width: 280px;height: 100px;padding: 10px;float: left;} nav.prod-format-nav-bar{}
nav.prod-format-nav-bar ul {width: 250px;margin: 0 auto;}
nav.prod-format-nav-bar ul li {float: left;width: 80px;text-align: center;display: block;}
nav.prod-format-nav-bar ul li.active{background: brown;color: white;}
</style>
</head>
<body>
<header class="header"><h1>Header</h1></header>
<section class="section">
<div id="app-wrapper" class="app-wrapper">
<div class="app-container">
<div class="prod-scro-list mb20">
<div id="prod-wrapper" class="prod-wrapper">
<div class="prod-container">
<ul class="clearfix">
<li>this is prod 1 pic</li>
<li>this is prod 2 pic</li>
<li>this is prod 3 pic</li>
<li>this is prod 4 pic</li>
</ul>
</div>
</div>
<nav class="scro-nav-bar">
<ul class="clearfix">
<li class="active">1</li>
<li>2</li>
<li>3</li>
<li>4</li>
</ul>
</nav>
</div>
<div class="prod-detail-intr mb20">
<article>
<h1>this is prod title</h1>
<p>this is introduction paragraph!</p>
</article>
</div>
<div class="prod-format mb20">
<nav class="prod-format-nav-bar">
<ul class="clearfix">
<li class="active">产品名称</li>
<li>产品参数</li>
<li>商品价值</li>
</ul>
</nav>
<div id="prod-format-wrapper" class="prod-format-wrapper">
<div class="prod-format-list">
<ul class="clearfix">
<li>this is format 1</li>
<li>this is format 2</li>
<li>this is format 3</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</section>
<footer class="footer"><p>Footer</p></footer>
</body>
</html>

demo6.js

;(function () {
'use strict'; var ProdDetailApp = function () {
var sectScrol = null,
prodScrol = null,
prodFormScrol = null; this.run = function () {
// console.log('running!'); $(window).load(function () {
sectScrol = new iScroll('app-wrapper');
prodScrol = new iScroll('prod-wrapper', {
snap: true,
momentum: false,
hScrollbar: false,
onScrollEnd: function () {
document.querySelector('.scro-nav-bar ul li.active').className = '';
document.querySelector('.scro-nav-bar ul li:nth-child('+(this.currPageX+1)+')').className='active';
}
});
prodFormScrol = new iScroll('prod-format-wrapper', {
snap: true,
momentum: false,
hScrollbar: false,
onScrollEnd: function () {
document.querySelector('.prod-format-nav-bar ul li.active').className = '';
document.querySelector('.prod-format-nav-bar ul li:nth-child('+(this.currPageX+1)+')').className='active';
}
});
}); $(document).delegate('.prod-format-nav-bar ul li', 'click', navScrolAction); function navScrolAction (e) {
var $this = $(e.target),
index = $this.index(); prodFormScrol.scrollToPage(index, 1);
}
}
} var prodDetailApp = new ProdDetailApp();
prodDetailApp.run();
}());

webapp 开发之iScroll 学习的更多相关文章

  1. IOS开发之XCode学习011:UISwitch控件

    此文学习来源为:http://study.163.com/course/introduction/1002858003.htm 此工程文件实现功能:  1.定义UIswitch控件,添加UIswitc ...

  2. 移动开发之h5学习大纲

    移动开发学习形式:授课.自学 1.html5 css3 htm5shiv.js response.js 2.流式布局 自适应布局 盒模型 弹性盒模型 响应式布局3.iscroll swiper boo ...

  3. iOS开发之git学习

    本人是参考廖雪峰的git学习的.他写的非常详细,我在这里就是把我学习中的总结以及碰到的坑写出来. /* 初始化git仓库:git init */ /* 添加文件到git仓库 */ 分两步: 第一步:追 ...

  4. IOS开发之XCode学习012:Slider和ProgressView

    此文学习来源为:http://study.163.com/course/introduction/1002858003.htm 此工程文件实现功能:  1.定义UISlider和UIProgressV ...

  5. IOS开发之XCode学习010:定时器和视图对象

    此文学习来源为:http://study.163.com/course/introduction/1002858003.htm 此工程文件实现功能: 1.通过点击"启动定时器"按钮 ...

  6. IOS开发之XCode学习009:UIViewController使用

    此文学习来源为:http://study.163.com/course/introduction/1002858003.htm 此工程文件实现功能: 通过点击屏幕事件,调用ViewController ...

  7. IOS开发之XCode学习008:UIViewController基础

    此文学习来源为:http://study.163.com/course/introduction/1002858003.htm 红色框选部分用A代替,AppDelegate类在程序框架启动时,如果在i ...

  8. IOS开发之XCode学习007:UIWindow对象

    此文学习来源为:http://study.163.com/course/introduction/1002858003.htm #import "AppDelegate.h" @i ...

  9. IOS开发之XCode学习013:步进器和分栏控件

    此文学习来源为:http://study.163.com/course/introduction/1002858003.htm 此工程文件实现功能:  1.定义UIStepper和UISegmente ...

随机推荐

  1. C# 或 JQuery导出Excel

    首先要添加NPOI.dll文件 然后添加类:NPOIHelper.cs using System; using System.Data; using System.Configuration; usi ...

  2. vi中正则表达式的使用

    在当前行中删除从aa到zz的所有字符 :s/aa.*zz//在整个文件用and代替所有的&字符:1,$s/&/and/g在每一行的首行插入字符串new:1,$s/^/new/g在第二行 ...

  3. VC6.0打开或者添加工程文件崩溃的解决方法

    在Win7操作系统下使用Visual C++ 6.0编程时,如果点击菜单中的[打开]或者[添加],或者按快捷键,都会弹出下图的对话框,出现程序崩溃并退出的情况. 出现这种问题的原因是VC6.0和其他软 ...

  4. Surface Pro 3 扩展坞体验

    Surface Pro 3 的确是Microsoft的诚意之作,虽然价格不便宜,但值得入手. 买完Surface Pro 3 后,没事在某网站上闲逛,这货(扩展坞)映入我的眼帘,看完后,心想,这货必须 ...

  5. TCP 粘包/拆包问题

    简介    TCP 是一个’流’协议,所谓流,就是没有界限的一串数据. 大家可以想想河里的流水,是连成一片的.期间并没有分界线, TCP 底层并不了解上层业务数据的具体含义 ,它会根据 TCP 缓冲区 ...

  6. Matlab绘制透明平面(二元函数)

    一.需求来源 对空间结构聚类,恰好是圆台,找到了上下底面的方程,所以画图. 二.需求解决 2.1 绘制平面 x = linspace(0,5,100); y = linspace(0,4,100); ...

  7. 户外物理渗透:终端机,客户端的web测试思路

    现在的客户端界面越做越好看了,很多用到了web技术,轻便.界面炫.更新快,但是这样web的缺点也就出来了,就是不稳定,容易受用户等因素影响. 因为很多客户端web是内嵌的,内部通信,所以很多对安全的考 ...

  8. Kali Linux 命令集

    系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS ...

  9. HDU4542 小明系列故事——未知剩余系

    大赞的数论题: 大致思路: 对于TYPE=1的情况,认为 X 中有 X-K个约数,求最小的X,X-K>0 那么化为B+K的约数为B, 我们知道(B+K)的约数<=2*SQRT(B+K);这 ...

  10. ASP.Net 上传进度条的实现方法

    对于加载时间比较长的ASP.NET页面,我们可以在客户端浏览器中显示进度条来显示页面正在装载.下面就是具体的实现过程: 新建项目,名字为WebPortal,在项目类型中选择Visual C#项目或者V ...