爱易网
IT新闻
IT新闻
爱易资讯
网站搭建
云虚拟主机教程
云服务器教程
Apache教程
IIS教程
Nginx教程
网站策划
站长文章
推广教程
淘宝客教程
网页设计
HTML教程
XHTML教程
CSS教程
HTML5教程
CSS3教程
JavaSript基础
JQuery教程
Node.js教程
前端技术
Ajax教程
Js特效
Xml教程
平面设计
页面UI设计
photoshop教程
程序开发
AI人工智能
Asp教程
Php教程
Asp.Net教程
Net Core教程
C#教程
Java教程
Jsp教程
开发技术
微信小程序教程
Uniapp开发教程
微信公众号开发
Andriod教程
IOS教程
DOS教程
Python教程
Docker教程
Windows Container教程
数据库
MSSQL教程
MySQL教程
Redis教程
Access教程
Oracle教程
数据库教程
操作系统
Linux教程
Windows教程
MAC教程
Cisco教程
交换机教程
防火墙教程
搜索
爱易网页
JS特效
原生JS编写的照片墙效果实例演示特效
原生JS编写的照片墙效果实例演示特效
日期:2014-05-18 浏览次数:20403 次
以下是程序代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>照片墙一多实例演示</title> <style type="text/css"> body,div,h2,ul,li{margin:0;padding:0;} body{font:12px/1.5 Arail;} .box{width:860px;margin:10px auto;background:#eee;border:1px solid #b8b8b8;overflow:hidden} .title{height:30px;line-height:30px;font-size:14px;padding:0 15px 0 35px;border-bottom:1px solid #b8b8b8;background:#fafafa url(http://js.aiyiweb.com/img/mm/ico.gif) 5px 50% no-repeat;} .title span{float:left;} .title a{float:right;color:#06f;outline:none;} .title a:hover{color:red;} .box ul{float:left;padding:0 15px 15px 0;} .box li{float:left;width:140px;height:105px;padding:6px;background:#fff;border:1px solid #c3c3c3;display:inline;margin:15px 0 0 15px;list-style:none;} .box li img{float:left;width:140px;height:105px;} .box li.hig{padding:5px;border:2px dashed #f30;opacity:0.5;filter:alpha(opacity=50);} </style> <script type="text/javascript"> //获取ID var $ = function (id) {return typeof id === "string" ? document.getElementById(id) : id}; //获取tagName var $$ = function (tagName, oParent) {return (oParent || document).getElementsByTagName(tagName)}; //获取class var $$$ = function (sClass, oParent) { var aClass = [], i = 0, reClass = new RegExp("(\\s|^)" + sClass + "($|\\s)"), aElement = $$("*", oParent); for (i = 0; i < aElement.length; i++)reClass.test(aElement[i].className) && aClass.push(aElement[i]); return aClass }; //获取元素位置 function getPos(obj) { var iTop = obj.offsetTop; var iLeft = obj.offsetLeft; while (obj.offsetParent) { iTop += obj.offsetParent.offsetTop; iLeft += obj.offsetParent.offsetLeft; obj = obj.offsetParent; } return {top:iTop, left:iLeft} }; //创建照片墙对象 var PhotoWall = function () {this.initialize.apply(this, arguments)}; PhotoWall.prototype = { initialize: function (obj, aData) { var oThis = this; this.oParent = $(obj); this.oUl = $$("ul", this.oParent)[0]; this.oBtn = $$("a", this.oParent)[0]; this.zIndex = 1; this.aPos = []; this.aData = aData; this.dom = document.documentElement || document.body; this.create(); this.oBtn.onclick = function () {oThis.randomOrder()} }, create: function () { var aFrag = document.createDocumentFragment(); var i = 0; for (i = 0; i < this.aData.length; i++) { var oLi = document.createElement("li"); var oImg = document.createElement("img"); oImg.src = this.aData[i]; oLi.appendChild(oImg); aFrag.appendChild(oLi) } this.oUl.appendChild(aFrag); this.aLi = $$("li", this.oParent); this.changeLayout() }, changeLayout: function () { var i = 0; this.oParent.style.height = this.oParent.offsetHeight - 2 + "px"; this.aPos.length = 0; for (i = 0; i < this.aLi.length; i++) this.aLi[i].style.cssText = ""; for (i = 0; i < this.aLi.length; i++) { this.aLi[i].index = i; this.aLi[i].style.top = getPos(this.aLi[i]).top + "px"; this.aLi[i].style.left = getPos(this.aLi[i]).left + "px"; this.aPos.push({left:getPos(this.aLi[i]).left, top:getPos(this.aLi[i]).top}) } for (i = 0; i < this.aLi.length; i++) { this.aLi[i].style.position = "absolute"; this.aLi[i].style.margin = "0"; this.drag(this.aLi[i]) } }, drag: function (obj, handle) { var oThis = this; var handle = handle || obj; handle.style.cursor = "
上一篇:狡猾的按钮特效
下一篇:面向对象的无缝上下滚动图片特效代码,带上下箭头指示
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
黑狐病毒疯传播 电脑管家首推 专杀工具
历史惊人相似:如今的库克 曾经的鲍尔默
iOS7拖累iPad 5、iPad mini2发布 传十月份推出
谷歌董事长成花花公子:情史足以媲美涂鸦
摩托罗拉移动裁员关闭德州Moto X手机工厂
“扫黄打非”下9158否认遭整顿
NEC拟出售移动效劳子公司NEC Mobile
想玩P2P?几个您必须知道的潜规则
新一代iPhone11月底国内上市 支持TD制式
推荐阅读
更多>
国美电商开打价钱战 牟贵先言行矛盾受质疑
微软不会被颠覆
曹国伟:微博将关注Facebook和Twitter
全球五大电信设备商业绩:华为净利居首
雅安地震 绝不宽恕应用人们爱心的骗子!
传诺基亚5月14日发布会推出Lumia 950
百度吴恩达:图像和音视频搜索是人工智能新方向
银联布局二维码支付,“擦边球”生态不能自救
靠谱分析:6月发生的WWDC和谷歌I/O大会,将会出现哪些新产品?
支付宝曝平安破绽:转账信息被谷歌抓取
锐迪科将以9.25美元/ADS价钱出售835万份ADS
NEC拟出售移动效劳子公司NEC Mobile
虚拟运营商们更像三大运营商的“二道贩子”
谷歌新技术进入iOS平台:将叫板苹果Siri
中国首台比特币ATM登陆上海 可购买不可兑换现钞
黑狐病毒疯传播 电脑管家首推 专杀工具
第二梯队也PK:当1号店“遇上”京东手机节
百度对糯米来说到底意味着什么?
据消息传百度将要控股携程 整合去哪儿
评论:马云的成功建立在什么基础上很值得怀疑