摘要:今天要分享的是一款特別的焦點圖效果,不依賴,全程手寫,代碼量不大,百行左右,它的特別之處在于可以多維度的切換誰說程序員沒有情調拿這個去給女票定制個專屬相冊吧源碼地址下載核心代碼
今天要分享的是一款特別的 html5/css3 焦點圖效果,不依賴jquery,全程JS 手寫,代碼量不大,百行左右,它的特別之處在于 可以多維度的切換
誰說程序員沒有情調? 拿這個去給女票定制個專屬相冊吧
源碼地址:下載
js核心代碼:
window.addEventListener("load",function(){ figure = document.getElementById("multiSlide"); topButton = document.getElementById("top"); bottomButton = document.getElementById("bottom"); leftButton = document.getElementById("left"); rightButton = document.getElementById("right"); new Box(-2,2,"images/2689.jpg"); new Box(-1,2,"images/2690.jpg"); new Box(0,2,"images/2691.jpg"); new Box(1,2,"images/2692.jpg"); new Box(2,2,"images/2693.jpg"); new Box(3,2,"images/2694.jpg"); new Box(4,2,"images/2695.jpg"); new Box(5,2,"images/2696.jpg"); new Box(2,-2,"images/2697.jpg"); new Box(2,-1,"images/2698.jpg"); new Box(2,0,"images/2699.jpg"); new Box(2,1,"images/2700.jpg"); new Box(2,2,"images/2701.jpg"); new Box(2,3,"images/2702.jpg"); new Box(2,4,"images/2703.jpg"); new Box(2,5,"images/2704.jpg"); topButton.addEventListener("click", function(){ if(slidePosY>-3) slide("Y",-1); }); bottomButton.addEventListener("click", function(){ if(slidePosY<4) slide("Y",1); }); leftButton.addEventListener("click", function(){ if(slidePosX>-3) slide("X",-1); }); rightButton.addEventListener("click", function(){ if(slidePosX<4) slide("X",1); }); }); var unit = 160; var registeredBoxes = []; var slidePosX = 0; var slidePosY = 0; var Box = function(posX,posY,img){ this.pos = {}; this.pos.X = posX; this.pos.Y = posY; this.img = img; this.init(); } Box.prototype = { init : function(){ this.DOMElement = document.createElement("div"); this.DOMElement.className = "box"; this.DOMElement.style.left = (this.pos.X*unit)-unit+"px"; this.DOMElement.style.top = (this.pos.Y*unit)-unit+"px"; this.DOMElement.setAttribute("data-pos",this.pos.X.toString()+this.pos.Y.toString()); var img = document.createElement("img"); img.src = this.img; this.DOMElement.appendChild(img); figure.appendChild(this.DOMElement); registeredBoxes.push(this); }, setPosition : function(axis,val){ this.pos[axis] = val; if(axis == "X"){ this.DOMElement.style.left = (this.pos[axis]*unit)-unit+"px"; }else if(axis == "Y"){ this.DOMElement.style.top = (this.pos[axis]*unit)-unit+"px"; } this.DOMElement.setAttribute("data-pos",this.pos.X.toString()+this.pos.Y.toString()); } } function slide(axis,dir){ var len = registeredBoxes.length; if(axis == "Y"){ for(var i=0; i
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/109705.html
摘要:解析進到首頁其實關鍵字在本地就隨機取完了,在首頁中的方法中就通過緩存了要畫的元素,比如關鍵字這里是圖片關鍵字解析語也是圖片畢竟微信小程序的不支持字體等等。 一、Canvas應用的背景(個人理解)及基礎語法 背景 從2012年開始,微信那個時候用戶的積累的量已經非常大了,推出公眾號,當然大屏智能手機在那個時候也流行,傳統的大眾媒體逐步消亡,像微信公眾號這樣的新媒體盛行。企業的廣告投入開始...
摘要:畢老師運營這明顯是廣告,但為什么要在這里發過去一段時間,由于團隊中的各種高富帥人生淫家都在全世界旅游,我們的開發進度比較慢當然之前也一直很慢,因為想要做一個慢產品。 Gradchef · 畢老師運營 這明顯是廣告,但為什么要在這里發? 過去一段時間,由于團隊中的各種高富帥、人生淫家都在全世界旅游,我們的開發進度比較慢(當然之前也一直很慢,因為想要做一個慢產品)。但是,我們一直都在堅...
摘要:項目需求寫完有一段時間了,但是還是想回過來總結一下,一是對項目的回顧優化等,二是對坑的地方做個記錄,避免以后遇到類似的問題。需求利用微信強大的社交能力通過小程序達到裂變的目的,拉取新用戶。摘要: 小程序開發必備技能啊... 原文:小程序如何生成海報分享朋友圈 作者:小白 Fundebug經授權轉載,版權歸原作者所有。 項目需求寫完有一段時間了,但是還是想回過來總結一下,一是對項目的回顧優...
閱讀 1011·2021-11-23 10:11
閱讀 3853·2021-11-16 11:50
閱讀 920·2021-10-14 09:43
閱讀 2712·2021-10-14 09:42
閱讀 2710·2021-09-22 16:02
閱讀 1055·2019-08-29 10:57
閱讀 3377·2019-08-29 10:57
閱讀 2268·2019-08-26 13:52