揭秘騰訊burberry活動頁面中的特效_html/css_WEB-ITnose
Jun 24, 2016 pm 12:02 PM
4月24日,Burberry亞太地區(qū)規(guī)模最大的旗艦店在上海開幕。Burberry突破性地運用了諸多創(chuàng)新的數(shù)字營銷模式,借助與騰訊的合作,為更多未能到場的用戶創(chuàng)造了一個“平行的體驗”,也正式開啟了Burberry的創(chuàng)新數(shù)字營銷之旅。
騰訊的營銷頁面:?
其中多次用到了類似于云霧褪去的效果,如下圖。
我對這種神奇的特效產生的極大的興趣,于是通過chrome的審查元素里面Resources找到下面這張圖片(由于圖片是白色的png,為了讓大家看清楚我將背景調成了黑色)。
于是效果的實現(xiàn)方式就顯而易見了,是利用css3的-webkit-mask來實現(xiàn)的。
####Step1.為背景加上蒙板 ?
<div class="stage"> <div class="sprite1"></div> </div>
.stage{ width: 320px; height: 480px; position: absolute; left: 50%; top: 50%; margin-top:-240px; margin-left:-160px; background: url('./img/bg.jpg') no-repeat; background-size: auto 100%;}.stage .sprite1{ width: 100%; height: 100%; background: url('./img/bg2.jpg') no-repeat; background-size: auto 100%; -webkit-mask:url('./img/Touch1.png') no-repeat; -webkit-mask-size: 100% 100%;}
這里為了在桌面瀏覽器中觀看方便,將畫面大小調整成了320*480并居中。在 sprite1中添加 background的同時也增加了蒙板。
-webkit-mask:url('./img/Touch1.png') no-repeat;-webkit-mask-size: 100% 100%;
我們這里將蒙板的大小設置為100%來觀察蒙板的效果。圖中畫圈圈的地方就是sprite1透過蒙板展示出來的部分。
我們看到這個蒙板Touch1.png應該是一個序列幀組成的圖片,我們只需要將其一幀幀的顯示出來就可以實現(xiàn)動畫了。
點擊查看歷史代碼
Step2.序列幀動畫
.stage .sprite1{ ...... -webkit-mask-size: 400% 300%; -webkit-mask-position: 0% 0%;}
Touch1.png 是序列幀的整合圖片,其中一排有4幀一共有3排,所以我們將 -webkit-mask-size 設為 400% 300% 。將 -webkit-mask-postion 設為 0% 0% 表示從第一幀開始。做動畫時只需要依次修改 -webkit-mask-position 的x與y值,每次將x增加25%(100/每排的幀數(shù)4)直到75%,y增加33.33%(100/每牌的幀數(shù)3)直到66.66%。我們需要將每一幀的position狀態(tài)在不同的時間賦給sprite1,這只需要用 setTimeout 就可以了。
我們新建一個spriteClip類,并傳入(dom,w,h,time)四個參數(shù),其中dom用來定位sprite1這個元素,w為一排有幾幀,h為一共有幾行,time為每一幀之間的間隔。
function spriteClip(dom,w,h,time){ if(dom){ this.dom = dom; this.w = w ||0; this.h = h ||0; this.time = time || 0; }else{ return false; }}
新建run方法。遍歷w與h算出時間與位置,用setTimeout設置好延時執(zhí)行
spriteClip.prototype.run = function(){ for(var w=0;w<this.w for h="0;h<this.h;h++){" var time="(h*self.time*self.w+w*self.time);" settimeout self.dom.style.webkitmaskposition="(100/(self.w-1))*w+'%"> <br> <br> <p></p> <p> 新建并運行spriteClip。</p> <p> </p> <pre name="code" class="sycode">var sprite1 = document.querySelector('.sprite1');var sp1 = new spriteClip(sprite1,4,3,50);sp1.run();
運行代碼:
點擊查看歷史代碼
Step3.添加動畫控制
有了sprite1后,再添加3個sprite,將所有的動畫按照順序播放來形成完整的轉場。為了實現(xiàn)按照順序的播放,我們需要為動畫添加播放控制。即在播放動畫完成后給dom觸發(fā)一個finish事件,dom接到完成事件后執(zhí)行下一個動畫。同時添加show和hide用來控制動畫的顯示/隱藏。
function spriteClip(dom,w,h,time){ if(dom){ ...... //記錄dom初始的display狀態(tài) this.display = this.dom.style.display; //記錄動畫是否播放過 this.played = false; }else{ return false; }}spriteClip.prototype.run = function(){ //如果動畫已經播放過則不做任何動畫 if(this.played) return false; //標記為已播放完成 this.played = true; //讓dom顯示 this.show(); for(var w=0;w<this.w for h="0;h<this.h;h++){" var time="(h*self.time*self.w+w*self.time);" settimeout ...... if>= self.w-1 && h>=self.h-1){ //動畫結束 var event = document.createEvent('HTMLEvents'); event.initEvent('finish', true, true); event.eventType = 'message'; event.content = 'finish'; //觸發(fā)finish事件 self.dom.dispatchEvent(event); } },time); })(w,h,this); } }}//隱藏domspriteClip.prototype.hide = function(){ this.dom.style.display = 'none';}//顯示domspriteClip.prototype.show = function(){ this.dom.style.display = this.display;}//接收finish時間并用callback函數(shù)處理spriteClip.prototype.finish = function(callback){ this.dom.addEventListener('finish',callback);}var sprite1 = document.querySelector('.sprite1');var sp1 = new spriteClip(sprite1,4,3,50);//在做動畫之前讓sprite隱藏sp1.hide();document.addEventListener('touchend',function(){ //手指抬起后運行動畫 sp1.run();});document.addEventListener('click',function(){ //點擊后運行動畫 sp1.run();});sp1.finish(function(){ //動畫完成 console.log('finish');});</this.w>
下面添加剩下的3個sprite。
.......stage .sprite2{ width: 100%; height: 100%; position: absolute; left: 0px; top: 0px; background: url('./img/bg2.jpg') no-repeat; background-size: auto 100%; -webkit-mask:url('./img/Touch2.png') no-repeat; -webkit-mask-size: 400% 300%; -webkit-mask-position: 0% 0%;}.stage .sprite3{ width: 100%; height: 100%; position: absolute; left: 0px; top: 0px; background: url('./img/bg2.jpg') no-repeat; background-size: auto 100%; -webkit-mask:url('./img/Touch3.png') no-repeat; -webkit-mask-size: 400% 300%; -webkit-mask-position: 0% 0%;}.stage .sprite4{ width: 100%; height: 100%; position: absolute; left: 0px; top: 0px; background: url('./img/bg2.jpg') no-repeat; background-size: auto 100%; -webkit-mask:url('./img/Touch4.png') no-repeat; /* Touch4是4*5 */ -webkit-mask-size: 400% 500%; -webkit-mask-position: 0% 0%;}......<div class="stage"> <div class="sprite1"></div> <div class="sprite2"></div> <div class="sprite3"></div> <div class="sprite4"></div> </div>.....//新建4個spritevar sprite1 = document.querySelector('.sprite1');var sprite2 = document.querySelector('.sprite2');var sprite3 = document.querySelector('.sprite3');var sprite4 = document.querySelector('.sprite4');var sp1 = new spriteClip(sprite1,4,3,80);var sp2 = new spriteClip(sprite2,4,3,80);var sp3 = new spriteClip(sprite3,4,3,80);var sp4 = new spriteClip(sprite4,4,5,80);sp1.hide();sp2.hide();sp3.hide();sp4.hide();document.addEventListener('touchend',function(){ sp1.run();});document.addEventListener('click',function(){ sp1.run();});sp1.finish(function(){ //sprite1結束后運行sprite2 sp2.run();});sp2.finish(function(){ //sprite2結束后運行sprite3 sp3.run();});sp3.finish(function(){ //sprite3結束后運行sprite4 sp4.run();})......
運行代碼:
查看所有代碼請去Github
如有問題或者建議請微博@UED天機。我會及時回復,也可以提供其他特效一起討論其實現(xiàn)方法。

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Pada 30 Mei, Tencent mengumumkan peningkatan menyeluruh model Hunyuannya Apl "Tencent Yuanbao" berdasarkan model Hunyuan telah dilancarkan secara rasmi dan boleh dimuat turun dari kedai aplikasi Apple dan Android. Berbanding dengan versi applet Hunyuan dalam peringkat ujian sebelumnya, Tencent Yuanbao menyediakan keupayaan teras seperti carian AI, ringkasan AI, dan penulisan AI untuk senario kecekapan kerja untuk senario kehidupan harian, permainan Yuanbao juga lebih kaya dan menyediakan pelbagai ciri , dan kaedah permainan baharu seperti mencipta ejen peribadi ditambah. "Tencent tidak akan berusaha untuk menjadi yang pertama membuat model besar, Liu Yuhong, naib presiden Tencent Cloud dan orang yang bertanggungjawab bagi model besar Tencent Hunyuan, berkata: "Pada tahun lalu, kami terus mempromosikan keupayaan untuk Model besar Tencent Hunyuan Dalam teknologi Poland yang kaya dan besar dalam senario perniagaan sambil mendapatkan cerapan tentang keperluan sebenar pengguna

King of Glory telah melancarkan acara Let's Go Together to Flower Season Pemain yang mengambil bahagian dalam acara itu boleh menerima bingkai avatar dan banyak hadiah secara percuma Acara ini mempunyai had masa dan menyediakan pemain dengan jumlah empat tahap membawakan anda panduan untuk acara Let's Go to Flower Season, saya harap ia dapat membantu semua orang menyelesaikan cabaran tahap. Raja Kemuliaan, Pergi ke Musim Berbunga bersama panduan Raja Kemuliaan, Pergi ke Musim Berbunga bersama-sama Pengenalan kepada permainan aktiviti: 1. Pergi ke Musim Berbunga bersama-sama ialah aktiviti menukar kad, dan pemain perlu bertukar. atas kad untuk melepasi tahap. 2. Pemain boleh menukar kad dengan menyelesaikan tugasan dan mendapatkan embun bunga semasa acara. 3. Setiap empat kad pelepasan dalam panel aktiviti disambungkan ke dalam satu garisan (termasuk garisan mendatar, garisan menegak dan garisan pepenjuru) untuk melepasi tahap kecil. 4. Setiap kali anda mengosongkan tahap, anda boleh mendapat ganjaran yang sepadan dan anda juga boleh mendapatkan ganjaran tambahan dengan membantu rakan anda menyerahkan kad. hidup

Menurut berita dari laman web ini pada 7 Ogos, pengambilan kampus 2025 Tencent telah dilancarkan secara rasmi semalam berikutan pengambilan pelatih pada tahun 2024 dan projek khas pengambilan model besar AI "Pelan Qingyun", ia sekali lagi mengeluarkan isyarat "pengembangan pendaftaran". bukan sahaja skala pengambilan lebih besar daripada dua tahun sebelumnya Terdapat pertumbuhan yang besar, dan julat masa tamat pengajian untuk orang juga telah diperluaskan lagi. Menurut laporan, pengambilan kampus Tencent pada 2025 akan membuka lebih daripada 70 jawatan dalam lima kategori utama: teknologi, produk, pasaran, reka bentuk dan fungsi. Akan terdapat banyak perubahan dalam pengambilan kampus Tencent tahun ini Julat masa tamat pengajian untuk pengambilan kampus akan diperluaskan daripada satu tahun kepada dua tahun. Pelajar yang lulus dari Januari 2024 hingga Disember 2025 (Sijil Pengijazahan akan diguna pakai di Tanah Besar China, Sijil Ijazah akan diguna pakai di Hong Kong, Macao, Taiwan dan wilayah luar negara) boleh memohon melalui laman web pengambilan rasmi Tencent dan “Tencent

Pengalaman hidup "True Me" didedahkan: Adakah ia sub-jenama OPPO? Memandangkan pasaran telefon pintar terus berkembang, pelbagai jenama telefon bimbit telah melancarkan produk baharu untuk memenuhi keperluan pengguna yang berubah-ubah. Antaranya, jenama telefon mudah alih yang dipanggil "True Me" telah menarik perhatian ramai sejak beberapa tahun kebelakangan ini. Prestasi kos yang tinggi dan pengalaman pengguna yang berkualiti tinggi telah disambut baik oleh ramai pengguna. Namun, pengalaman hidup dan latar belakang jenama telefon bimbit "True Me" sentiasa diselubungi misteri. Baru-baru ini, telah dilaporkan bahawa telefon bimbit "Real Me" adalah sub-jenama OPPO Berita ini telah membuat banyak bunyi di kalangan telefon bimbit.

Model AniPortrait adalah sumber terbuka dan boleh dimainkan secara bebas. "Alat produktiviti baharu untuk Xiaopozhan Ghost Zone Baru-baru ini, projek baharu yang dikeluarkan oleh Tencent Open Source menerima penilaian sedemikian di Twitter. Projek ini ialah AniPortrait, yang menjana potret animasi berkualiti tinggi berdasarkan audio dan imej rujukan. Tanpa berlengah lagi, mari kita lihat demo yang mungkin diberi amaran oleh surat peguam: Imej anime juga boleh bercakap dengan mudah: Projek itu telah menerima pujian meluas selepas hanya beberapa hari sejak ia dilancarkan: bilangan Bintang GitHub telah melebihi 2,800. Mari kita lihat inovasi AniPortrait. Tajuk kertas: AniPortrait:Sintesis Dipacu Audio

Baru-baru ini, Tencent mengumumkan permulaan semula "Walnut Diary", yang telah digantung tahun lepas (pada 12:00 pada 15 Februari 2023), dan memulakan pengambilan untuk ujian kedua. Menurut laporan rasmi, lebih 1,000 orang telah mendaftar untuk ujian 2,000 orang, dan ujian itu dijangka bermula pada pertengahan hingga akhir Mac. "Walnut Diary" yang asal ialah permainan mudah alih persahabatan dan pembangunan gadis cantik yang dibangunkan oleh Giant Network dan diterbitkan oleh Tencent Games Ia dikeluarkan pada 16 April 2021, dan pelayan Taiwan dikeluarkan pada 14 Oktober 2021. Ia mendakwa bahawa "pemain boleh tinggal dan bertani bersama-sama dengan gadis emotikon popular Nanase Kurumi, dan dengan mudah memupuk Kurumi anda." Walau bagaimanapun, hasil "Diari Walnut" adalah teruk sejak pelancarannya, ia akhirnya dialih keluar dari rak pada Disember 2022 dan digantung pada Februari 2023. Paparan comel, protagonis Nanase

Permainan pelanggan MMORPG "Ark of Destiny", yang dilancarkan di Jepun pada September 2020, secara rasmi menutup pelayan Jepunnya hari ini selepas hampir tiga setengah tahun beroperasi. Tetapi permainan Korea dan permainan Jepun sentiasa menjadi puak yang hampir tidak serasi, dengan perbezaan yang besar dalam rasa dan gaya (terutamanya permainan dalam talian Inilah sebabnya permainan dalam talian Korea sukar untuk bertapak di Jepun). Penggantungan pelayan Jepun "Ark of Destiny" dijangka. Jadi persoalannya, bagaimana pula dengan pelayan nasional "Ark of Destiny" yang diwakili oleh Tencent? Perkara pertama yang menanggung beban adalah isu populariti yang paling dibimbangkan oleh majoriti pemain. Setakat ini, terdapat tiga jenis orang yang bermain "Ark of Destiny": taikun, pemain biasa dan samseng bata-dan-mortar. Tidak perlu dikatakan, nouveau riche, mana-mana permainan lebih menyeronokkan untuk dimainkan oleh orang kaya, "Ark of Destiny"

Kesukaran pengaturcaraan Go didedahkan: Seberapa sukar sebenarnya? Dalam beberapa tahun kebelakangan ini, dengan pembangunan berterusan pengkomputeran awan, data besar, kecerdasan buatan dan teknologi lain, bahasa pengaturcaraan juga sentiasa dikemas kini. Antaranya, sebagai bahasa pengaturcaraan yang telah menarik banyak perhatian sejak beberapa tahun kebelakangan ini, bahasa Go secara beransur-ansur muncul dalam kalangan pengaturcara kerana kesederhanaan dan kecekapannya. Walau bagaimanapun, bagi kebanyakan pemula, mempelajari bahasa Go penuh dengan cabaran. Jadi, betapa sukarnya bahasa Go? Artikel ini akan menggabungkan contoh kod khusus untuk mendedahkan kesukaran pengaturcaraan bahasa Go. Pergi kelebihan bahasa dan
