立体旋转查看图片

声明:如果程序有问题,请各位大虾多多指点,谢谢。

基于psoft.js制作的一款立体旋转查看图片应用

1.可以通过鼠标滑动来操作图片的旋转,可以向右,向左拖动

a。向左滑动

 

b。向右滑动

c。向左转到一下

 

2.代码实现:

a。初始化图片资源

psoft.onReady(function(){var imgs = [{src:'i1.jpg'},{src:'i2.jpg'},{src:'i3.jpg'},{src:'i4.jpg'}];album = new spaceAlbum( imgs );});

b。初始化图片

    init: function( arg ){//bind the elelment specified by id.this.bindWrap( arg[1] );//initialize the images.psoft.isArray( arg[0] ) && this.initImage( arg[0] );this.initData();this.initPosition();//push the current spaceAlbum object to global variable of spaceAlbumthis.objNum = spaceAlbum.obj.length;spaceAlbum.obj.push( this );},

通过js碎片文档来初始化图片资源

    initImage: function( imgs ){if ( this.idWrap ){//restore the imagesthis.imgs = imgs;//create the imagesvar fragment = document.createDocumentFragment();this.imgLen = imgs.length;for ( var i = 0, len = this.imgLen; i < len; i++ ){var img = psoft.createEle( 'img', imgs[ i ] );fragment.appendChild( img );}this.idWrap.appendChild( fragment );//add event listener$t( 'div', this.idWrap ).addEventListener('mousedown',spaceAlbum.mousedown, { obj: this});$t( 'div', this.idWrap ).addEventListener('mousemove',spaceAlbum.mousemove, { obj: this});$t( 'div', this.idWrap ).addEventListener('mouseup',spaceAlbum.mouseup, { obj: this});$t( 'div', this.idWrap ).addEventListener('mouseout',spaceAlbum.mouseup, { obj: this});}}

初始化图片的位置关系,最前面那个位置是blockMiddle

    initData: function(){// initialize important data;if ( this.imgLen ){// block variablethis.block = new Array( this.imgLen );// which 'img' element needs to change position.this.needChange = new Array();this.stack = new Array( );this.blockLeft = Math.floor( this.imgLen / 2 )-1;this.blockMiddle = this.blockLeft + 1;this.blockRight = this.blockMiddle + 1; }}

初始化各个图片的位置

    initPosition: function(){if ( this.imgLen ){//initialize the position of imagesvar imgHandle = $t( 'img', this.idWrap );for( var i=0, len = this.imgLen; i < len; i++ ){var tempBlock = imgHandle.eq(i);switch(i){case this.blockLeft:tempBlock.addClass('pos0'); this.block[i]=0;break;case this.blockMiddle:tempBlock.addClass('pos1');this.block[i]=1;break;case this.blockRight:tempBlock.addClass('pos2');this.block[i]=2;break;default:tempBlock.addClass('pos3');this.stack.push(i);this.block[i]=3;break;}}}}

 

更多详情,请进入  http://www.pubsoft.net/works/spaceAlbum/index.html

转载于:https://www.cnblogs.com/pubsoft/archive/2012/08/13/space_album.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/434345.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

asterisk架构

从架构的角度看来&#xff0c;Asterisk是由许多不同的模块组成的。在设计基于Asterisk的系统时&#xff0c;这种模块化的特性&#xff0c;提供了几乎无限的灵活必。作为Asterisk系统管理员&#xff0c;你拥有选择加载模块的权利。你所加载的每一个模块&#xff0c;都提供了不同…

esp虚拟服务器,esp8266接入云服务器

esp8266接入云服务器 内容精选换一换公有云平台提供的云监控&#xff0c;可以对云耀云服务器的运行状态进行日常监控。您可以通过管理控制台&#xff0c;直观地查看云耀云服务器的各项监控指标。云耀云服务器正常运行。关机、故障、删除状态的云耀云服务器&#xff0c;无法在云…

c++ primer 第六版 pdf_A3N630 塑壳断路器如何更换.pdf

太阳能单晶炉专用配套变压器&#xff0c;是我公司研发的生产太阳能单晶硅的单晶炉设备专用变压器&#xff0c;本产品作为太阳能单晶炉设备的配套产品&#xff0c;它将电网电源的三相380V电压转换成较低的三相交流50V电压&#xff0c;为加热提供电源&#xff0c;以得到设备加热所…

datareader对象直接转化为int_Integer、new Integer() 和 int 比较的面试题

作者&#xff1a;chenxiangxiang来源&#xff1a;https://www.cnblogs.com/cxxjohnson/p/10504840.html基本概念的区分&#xff1a;1、Integer 是 int 的包装类&#xff0c;int 则是 java 的一种基本数据类型2、Integer 变量必须实例化后才能使用&#xff0c;而int变量不需要3、…

个人推荐的SIP software Phone

开源免费的LinPhone&#xff0c;国内很多人基于他继续二次开发 http://www.linphone.org/ Zoiper 有免费的&#xff0c;有收费的&#xff0c;有SDK&#xff0c;支持SIP/IAX(没有NAT问题) 官方下载的免费版本里面就支持中文&#xff01; 免费版本支持&#xff1a;for Window…

_Linux中功能强大的截图工具 - Flameshot

Flameshot 是一款功能强大但易于使用的屏幕截图软件&#xff0c;中文名称火焰截图。Flameshot 简单易用并有一个 CLI 版本&#xff0c;所以你也可以从命令行来进行截图。Flameshot 是一个Linux发行版中完全免费且开源的截图工具。通常Linux发行版中会默认自带一个截图工具&…

jquery动画 -- 1.加载指示器

该系列文章是我阅读《jQuery 1.4 Animation Techniques》后的总结&#xff0c;有兴趣的朋友可以去看原版书籍。 动画效果对于丰富网站的交互体验起到了不可或缺的作用&#xff0c;他可以让你的站点更酷&#xff0c;更吸引人。 什么时候使用动画&#xff1a; 1.当显示或隐藏页面…

centos7 安装redis_Redis6安装(上) - 单机单实例

首先下载新版的redis6并且上传到centos7&#xff1a;安装redis需要gcc的环境&#xff0c;和以往老版本不同&#xff0c;这里的gcc需要高一点的版本。 yum install gcc-c随后升级gcc版本 yum -y install centos-release-scl yum -y install devtoolset-9-gcc devtoolset-9-gcc-c…

手机输入法带拼音声调_word中拼音横向设置

前言在word编辑文字的时候&#xff0c;可以加注拼音&#xff0c;这对于陌生文字辨别读音非常有帮助&#xff0c;但是插入的拼音都是在文字上方的&#xff0c;那如果我们想要横向插入拼音的话&#xff0c;应该怎么操作呢&#xff1f;今天小编就给大家分享&#xff0c;在word中拼…

怎么在安卓布局里设置滚动字体_Get新技能|如何在手机上设置文字版拼音?

首先明确一点&#xff1a;安卓手机里的汉字带上拼音&#xff0c;是需要安装拼音字体&#xff0c;而不是拼音输入法。大部分安卓手机里的汉字带上拼音&#xff0c;可按如下步骤操作&#xff1a;注&#xff1a;视频后小总结1.对于大部分现在的手机来说&#xff0c;已经提供了换字…

HTTP、TCP、UDP、Socket (转)

先来一个讲TCP、UDP和HTTP关系的1、TCP/IP是个协议组&#xff0c;可分为三个层次&#xff1a;网络层、传输层和应用层。在网络层有IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议。在传输层中有TCP协议与UDP协议。在应用层有FTP、HTTP、TELNET、SMTP、DNS等协议。因此&#x…

windows 禁用ipv6服务_39.Dism++ Windows系统简洁优化

Dism的特点Dism无需任何Dism组件&#xff0c;即可兼容高低版本所有系统&#xff01;而微软Dism则需要3个版本。Dism是Dism的交集&#xff0c;提供完全的图形化操作&#xff0c;几乎支持Dism的所有功能以及大量Dism原本所不支持的功能。管理更新、驱动、功能、Appx、可选功能、服…

windows功能_有 20 多种功能的 Windows 原生日历替代软件

Win 10 出来这么久了&#xff0c;不知道还有多少在用 XP 或者 Win 7 的朋友呢&#xff1f;今天小美要推荐的软件&#xff0c;是专门针对 Win 10 的&#xff0c;没有升级系统的小伙伴可能就无法使用了~这是一款用来替换 Windows 10 任务栏原生时间日历的软件&#xff0c;名字叫「…

小白学数据分析-----留存率是什么?

篇外话 前段时间比较忙碌&#xff0c;小白系列也因此停了一段时间&#xff0c;这期间做了不少分析&#xff0c;发现和总结了不少经验&#xff0c;自己觉得还是很有用&#xff0c;不过倒都是一些基础的东西。最近很多人都在问一些基础术语和计算方式&#xff0c;我懂得不多&…

nfc reader智能解码程序_更关注健康的高性价比智能手表 华米Amazfit Pop体验

现如今市面上有着种类繁多的智能手表产品&#xff0c;在软硬件各方面的体验上&#xff0c;华米的智能手表绝对是走在前列的&#xff0c;近期华米又发布了全新的智能手表&#xff1a;Amazfit Pop&#xff0c;双十一售价299元&#xff0c;这是一款专为爱运动&#xff0c;追求实用…

poj 3009 Curling 2.0 (dfs的应用)

http://poj.org/problem?id3009 &#xff08;1&#xff09;这是一个用球撞石头的游戏&#xff0c;撞到石头&#xff0c;石碎球停。在规定的10次抛球机会下&#xff0c;若求移动到终点就赢&#xff0c;否则算输了&#xff08;出界直接算输&#xff09;。 &#xff08;2&#xf…

移动app测试的多样性_快速搞定APP移动端自动化测试

1. 何为数据驱动什么是参数化&#xff1f;什么又是数据驱动&#xff1f;经常有人会搞不明白他们的关系&#xff0c;浅谈一下个人的理解&#xff0c;先来看两个测试中最常见的场景&#xff1a;登录&#xff1a;不同的用户名&#xff0c;不同的密码&#xff0c;不同的组合都需要做…

ui自动化测试框架_浅谈前端(UI)自动化测试

作为一名测试开发从业者&#xff0c;自动化测试好像是绕不开的话题...。结合最近接触到的一些测开应聘同学聊到关于前端自动化测试及自己的理解&#xff0c;分享一下自己对UI自动化测试的认识&#xff0c;大概如下。测试分层的自动化测试思想自动化测试分层思想所倡导的是对系统…

【转发】响应式Web设计?怎样进行?

什么是响应式Web设计&#xff1f;怎样进行&#xff1f;眼下&#xff0c;几乎每个新客户都希望他们的网站可以有专门的移动设备版本。最完美的情况呐&#xff0c;就是为iPhone、iPad、黑莓、Kindle…各自打造一款——页面分辨率还必须兼容任何设备。谁知道未来5年内我们还需要为…

基于Asterisk的VoIP开发指南——(1)实现基本呼叫功能

说明&#xff1a; 本文档探讨基于Asterisk如何实现VoIP的一些基本功能&#xff0c;包括基本呼叫功能的方案选取、主叫号码透传、如何编写AsteriskAGI程序、Radius认证计费模块等。 本文档VoIP软终端使用X-Lite&#xff0c;其它终端均可以接入测试。 文章内容仅供参考,转载请注…