<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>15.iphone图片查看器</title>
<meta name="author" content="Administrator" />
<style>
*{margin:0;padding:0}
#wrap{width:900px;height:600px;background:url(images/bg.png);margin:0 auto;position:relative}
#iphone{width:240px;height:361px;margin:0 auto;overflow:hidden;position: relative}
#img-frame{position:absolute}
li{list-style:none;float:left;width:240px;}
</style>
<script>
window.onload=function(){
var oWrap=document.getElementById('wrap');
var oIphone=document.getElementById('iphone');
var oIphone_ul=document.getElementsByTagName('ul')[0];
var oIphone_aLi=document.getElementsByTagName('li'); var downX=0;
var iNow=0; oIphone.style.paddingTop = (oWrap.offsetHeight - oIphone.offsetHeight)/2 +'px';
oIphone_ul.style.width = oIphone_aLi.length * oIphone_aLi[0].offsetWidth +'px'; oIphone_ul.onmousedown=function(ev){
var ev= ev || event;
downX= ev.clientX; if(oIphone_ul.setCapture) oIphone_ul.setCapture(); var disX = ev.clientX - oIphone_ul.offsetLeft; document.onmousemove=function(ev){
var ev= ev || event;
oIphone_ul.style.left = ev.clientX - disX +'px'
} document.onmouseup=function(ev){
var ev= ev || event;
document.onmousemove = document.onmouseup = null; if( ev.clientX < downX ){ if( iNow < oIphone_aLi.length-1 ) iNow++; //最后一次 不让他发生弹性运动 bb(oIphone_ul,{'left':-iNow*oIphone_aLi[0].offsetWidth});
console.log( iNow ) }else{ if( iNow!= 0 ) iNow--;//iNow 如果小于0 不让他发生弹性运动 bb(oIphone_ul,{'left':-iNow*oIphone_aLi[0].offsetWidth})
} }
return false
}
} function getStyle ( obj, attr ) { return obj.currentStyle?obj.currentStyle[attr] : getComputedStyle( obj )[attr]; }
/**多物体弹性运动框架**/
function bb(obj,json){
clearInterval(obj.timer);
obj.timer=setInterval(function(){
var iBtn = true;
for( var attr in json ){
/**代码块**/
if( !obj.iSpeed ) obj.iSpeed={};
if( !obj.iSpeed[attr] ) obj.iSpeed[attr]=0; var iTarget = json[attr];
var iCur = parseInt( getStyle( obj,attr ) ); obj.iSpeed[attr] += (iTarget - iCur)/6;
obj.iSpeed[attr] *= 0.75; if( Math.abs(obj.iSpeed[attr]) <=1 && Math.abs( iTarget - iCur )<=1 ){
obj.iSpeed[attr]=0;
obj.style[attr] = iTarget +'px'
}else{
iBtn = false;
var sNow= iCur + obj.iSpeed[attr];
if( attr =='width' || attr =='height' ){
if( sNow < 0 ) sNow =0;
}
obj.style[attr] = sNow +'px';
}
document.title = iCur +'-'+obj.iSpeed[attr];
/**代码块**/
} if( iBtn ){
clearInterval( obj.timer );
} },30)
}
</script>
<!-- Date: 2014-12-15 -->
</head>
<body>
<div id="wrap">
<div id="iphone">
<ul id="img-frame">
<li><img src="data:images/pic1.png"/></li>
<li><img src="data:images/pic2.png"/></li>
<li><img src="data:images/pic3.png"/></li>
<li><img src="data:images/pic4.png"/></li>
</ul>
</div>
</div>
</body>
</html>

iphone照片查看器的更多相关文章

  1. Win10系统怎样让打开图片方式为照片查看器

    转载自:百度经验 http://jingyan.baidu.com/article/5d368d1ef0cad13f60c057e3.html 1.首先,我们需要使用注册表编辑器来开启Win10系统照 ...

  2. 在Windows 10下启用旧的照片查看器

    从Windows 10开始,默认只能通过“照片”来查看图片了,非常不方便!通过将下列文本保存在.reg文件后导入,即可找回Windows XP时代的“照片查看器”. Windows Registry ...

  3. 解决Win10图片打开方式没有“Windows照片查看器”问题

    1.打开注册表编辑器(Win+R,Regedit),定位至(建议修改前备份注册表): HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Photo Viewe ...

  4. Window Server 2012 R2 没有照片查看器 打开图片都是画板问题怎么解决

    新安装了 Window Server 2012 R2 系统,感觉屌屌的样子,加上开机速度蛮快,心里略爽.结果,打开图片一看,发现竟然是画板,而且还没有照片查看器,顿时泪流满面. 后来我利用了强大的百度 ...

  5. 如何在Win10下设置图片的浏览方式为windows照片查看器

    小编前些天刚装好了win10,一阵心奋啊,今天刚打开一个图片,却发现图片的默认打开方式是window应用商店的app, 这让我觉得特别不舒服,没有之前windows自带的照片查看器好用,后来我本想进入 ...

  6. 【J2SE】java实现简单照片查看器

    程序执行结果: project结构图: 程序代码: import java.awt.BorderLayout; import java.awt.FileDialog; import java.awt. ...

  7. jQuery 插件 Magnify 开发简介(仿 Windows 照片查看器)

    前言 因为一些特殊的业务需求,经过一个多月的蛰伏及思考,我开发了这款 jQuery 图片查看器插件 Magnify,它实现了 Windows 照片查看器的所有功能,比如模态窗的拖拽.调整大小.最大化, ...

  8. Win10图片打开方式没有“Windows照片查看器”,如何找回?

    如果你是全新安装的Win10正式版,那么就会发现当在图片上点击右键时,"打开方式"菜单里熟悉的"Windows照片查看器"不见了,换成了Win10全新的&quo ...

  9. win10中使用 Windows照片查看器

    新建一个txt,将文件后缀名改为 .reg 用记事本或者其他txt编辑器编辑,复制下面文字: Windows Registry Editor Version 5.00 ; Change Extensi ...

随机推荐

  1. Akka源码分析-ask模式

    在我之前的博文中,已经介绍过要慎用Actor的ask.这里我们要分析一下ask的源码,看看它究竟是怎么实现的. 开发时,如果要使用ask方法,必须要引入akka.pattern._,这样才能使用ask ...

  2. xfs文件备份恢复篇一vm中linux新增磁盘

    XFS提供了 xfsdump 和 xfsrestore 工具协助备份XFS文件系统中的数据.xfsdump 按inode顺序备份一个XFS文件系统.centos7选择xfs格式作为默认文件系统,而且不 ...

  3. 用python语言写一个简单的计算器

    假如我们有这样一个式子: 1 - 2 * ( (60-30 +(-40/5) * (9-2*5/3 + 7 /3*99/4*2998 +10 * 568/14 )) - (-4*3)/ (16-3*2 ...

  4. netty学习:UDP服务器与Spring整合

    最近接到一个关于写UDP服务器的任务,然后去netty官网下载了netty的jar包(netty-4.0.49.Final.tar.bz2),解压后,可以看到上面有不少example,找到其中的关于U ...

  5. Python语言之变量1(数值,字符串,布尔)

    1.数值 整数:2, -2 长整数:2**1024, 2**2048(真的可以很~长~~~,手残算了个2**100000,IDLE还真给打出来了,ORZ) 浮点数:7.05, 1E2(100.0), ...

  6. 4星|《JAC写给外贸公司老板的企管书》:善总结爱学习、有业绩的老外贸的经验谈

    作者从事外贸10余年,作出了业绩,也善总结.爱学习.爱分享.本书是作者在外贸行业的从业经验集.有一些战略方面的,比如开发小语种市场,大部分都是战术方面的操作细节(比如如何做营销),应该是非常适合从业者 ...

  7. Android Binder机制(一) Binder的设计和框架

    这是关于Android中Binder机制的一系列纯技术贴.花了一个多礼拜的时间,才终于将其整理完毕.行文于此,以做记录:也是将自己所得与大家分享.和以往一样,介绍Binder时,先讲解框架,然后再从设 ...

  8. jenkins配置发送测试结果邮件

    简单版: https://www.cnblogs.com/gcgc/p/5631385.html https://blog.51cto.com/qicheng0211/1919341 升级版 http ...

  9. Uncaught TypeError: str.replace is not a function

    在做审核页面时,点击审核通过按钮不执行 后来F12控制台查看发现有报错 是因为flisnullandxyzero未执行 然后找出这个方法,此方法为公共方法,将这个方法复制出来 然后使用console. ...

  10. Day 11 文件和异常

    文件和异常 在实际开发中,常常需要对程序中的数据进行持久化操作,而实现数据持久化最直接简单的方式就是将数据保存到文件中.说到“文件”这个词,可能需要先科普一下关于文件系统的知识,对于这个概念,维基百科 ...