思路是利用jquery的scroll事件 然后判斷scrollTop是否到達(dá)了該元素的位置
成都創(chuàng)新互聯(lián)是專(zhuān)業(yè)的正寧網(wǎng)站建設(shè)公司,正寧接單;提供網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站,網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專(zhuān)業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行正寧網(wǎng)站開(kāi)發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專(zhuān)業(yè)做搜索引擎喜愛(ài)的網(wǎng)站,專(zhuān)業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!
HTML5是HTML的升級(jí)版,HTML5有兩大特點(diǎn):首先,強(qiáng)化了 Web 網(wǎng)頁(yè)的表現(xiàn)性能。其次,追加了本地?cái)?shù)據(jù)庫(kù)等 Web
應(yīng)用的功能。廣義論及HTML5時(shí),實(shí)際指的是包括HTML、CSS和JavaScript在內(nèi)的一套技術(shù)組合。今天我們推薦8款使用HTML5生成的特
殊效果,希望可以對(duì)大家的使用帶來(lái)幫助!
HTML5實(shí)現(xiàn)的五子棋游戲
在線演示
這是一款使用HTML5實(shí)現(xiàn)的五子棋特效,與計(jì)算機(jī)的對(duì)局你不見(jiàn)得能次次都贏得勝利,不信可以點(diǎn)擊在線演示。
一款不需要視頻文件的視頻播放器-Frame player
在線演示
HTML5視頻是非常棒的,它可以很容易的用在多款設(shè)備上。但是它也有自己的問(wèn)題,比如移動(dòng)設(shè)備的播放器,可能有不同版本不兼容的情況。今天我們介紹這款視頻播放器完善了之前的效果,用起來(lái)更方便。希望大家喜歡!
3D菜單
在線演示
或許在現(xiàn)如今這個(gè)科技發(fā)達(dá)的時(shí)代,在線點(diǎn)餐已不是新鮮事。餐廳可以對(duì)Menu進(jìn)行設(shè)計(jì),點(diǎn)擊菜名會(huì)相應(yīng)彈出菜品的照片,或者還可以增加卡路里,原材料和客戶(hù)們的評(píng)價(jià)等。絕對(duì)是一個(gè)超時(shí)髦的創(chuàng)意!
用HTML5的畫(huà)布實(shí)現(xiàn)撕布的動(dòng)畫(huà)效果
在線演示
用HTML5的畫(huà)布實(shí)現(xiàn)撕布的效果,滑動(dòng)鼠標(biāo),布會(huì)隨著鼠標(biāo)變動(dòng)。點(diǎn)擊鼠標(biāo)左鍵,然后滑動(dòng)鼠標(biāo),布就會(huì)被割開(kāi)。如果你還沒(méi)有查看過(guò)這款演示效果,那絕對(duì)逼真的讓你震撼!
HTML5 Canvas(畫(huà)布) 基礎(chǔ)使用和介紹
在線下載
還記得在過(guò)去的Web前端開(kāi)發(fā)中,如果你需要繪圖或者生成相關(guān)圖形的話(huà),使用Flash可能是你唯一或者說(shuō)最強(qiáng)大的實(shí)現(xiàn)方式,而在近些年的技術(shù)
熱點(diǎn)HTML5標(biāo)準(zhǔn)中,HTML
Canvas(畫(huà)布)能夠更加方便的幫助你實(shí)現(xiàn)2D繪制圖形圖像及其各種動(dòng)畫(huà)效果功能。在今天的這篇技術(shù)教程中我們將介紹基本的Canvas使用,希望大
家覺(jué)得有幫助!
HTML5畫(huà)布生成的2D光源效果
在線演示
超金屬的背景,仿佛探照燈的經(jīng)過(guò)讓他看上去更加的立體。這是一款使用HTML5 Canvas生成的2D光源效果。絕對(duì)讓你不后悔使用它!
HTML5的Flappy bird實(shí)現(xiàn)
在線演示
著名的Flappy Bird,相信知道的人一定不少吧,點(diǎn)擊你的空格,不要讓它掉下來(lái),看看你最終的成績(jī)有多好。發(fā)上來(lái)我們切磋一下吧.
Sonic - 循環(huán)加載的利器
在線演示1 在線演示2 在線演示3
Sonic是一個(gè)不到3k,非常小的JS類(lèi)庫(kù),你可以用這個(gè)類(lèi)庫(kù)來(lái)創(chuàng)建自定義的加載動(dòng)畫(huà)。它的循環(huán)動(dòng)畫(huà)效果非常贊,比如你可以用它做一條不斷追
逐自己尾巴
的蛇,這樣的動(dòng)畫(huà)。Sonic使用了HTML5的canvas元素和其相關(guān)API。它基于在一定小的時(shí)間間隔上,基于預(yù)定義的路徑,畫(huà)出下一個(gè)形狀,從而
完成動(dòng)畫(huà)效果。你可以使用arc,bezier,或line的方法來(lái)定義路徑。
html5:
用于繪畫(huà)的 canvas 元素
用于媒介回放的 video 和 audio 元素
對(duì)本地離線存儲(chǔ)的更好的支持
新的特殊內(nèi)容元素,比如 article、footer、header、nav、section
新的表單控件,比如 calendar、date、time、email、url、search
css3:
1. CSS3實(shí)現(xiàn)圓角(border-radius),陰影(box-shadow),
2. 對(duì)文字加特效(text-shadow、),線性漸變(gradient),旋轉(zhuǎn)(transform)
3. transform:rotate(9deg) scale(0.85,0.90) translate(0px,-30px) skew(-9deg,0deg);// 旋轉(zhuǎn),縮放,定位,傾斜
4. 增加了更多的CSS選擇器 多背景 rgba
5. 在CSS3中唯一引入的偽元素是 ::selection.
6. 媒體查詢(xún),多欄布局
7. border-image
CSS3除了為開(kāi)發(fā)者提供二維變形之外,還將動(dòng)畫(huà)從二維平面推動(dòng)到了三維立體狀態(tài),能夠?qū)崿F(xiàn)真正的三維特效。
三維變形和二維變形一樣,均使用的是transform屬性。想要觸發(fā)三維變形有兩種方式:一種方式是通過(guò)語(yǔ)法告知瀏覽器“請(qǐng)采用三維方式進(jìn)行變形處理”,另一種方式是直接使用CSS3三維變形的語(yǔ)法。
觸發(fā)方法1:告知瀏覽器變形方式
-webkit-transform-style:preserve-3d;
Tips:IE不支持三維變形,在移動(dòng)端,絕大多數(shù)的瀏覽器均為WebKit內(nèi)核,因此,在此句代碼之前需要書(shū)寫(xiě)-webkit-的前綴內(nèi)核。
Tips:不要為body元素設(shè)置-webkit- transform-style: preserve 3d,否則會(huì)對(duì)position:fixed定位的元素造成布局影響。在開(kāi)發(fā)當(dāng)中,如果當(dāng)前元素屬于body的子級(jí)元素,又希望應(yīng)用三維變形,則在body和當(dāng)前元素之間多嵌套一層結(jié)構(gòu),并為這層元素應(yīng)用三維變形即可。
觸發(fā)方法2:直接使用CSS3變形語(yǔ)法
!DOCTYPE?html
head
meta?charset="UTF-8"
title言成科技/title
style
.box1?{
width:?150px;
height:?150px;
border:?2px?solid?blue;
}
.box1?div?{
height:?150px;
background:?rgba(0,?0,?0,?0.5);
-webkit-transform:?translate3d(30px,?60px,?20px)?rotateX(30deg);
transform:?translate3d(30px,?60px,?20px)?rotateX(30deg);
}
/style
/head
body
div?class="box1"
div/div
/div
/body
/html
具體三維變形的具體屬性詳見(jiàn)《CSS3-3D相關(guān)知識(shí)詳解—視角以及變形方向》
3D效果制作
需求
制作一個(gè)立方體,并進(jìn)行旋轉(zhuǎn)
代碼實(shí)例
!DOCTYPE?HTML
html
head
meta?charset="utf-8"?/
title言成科技/title
link?rel="stylesheet"?type="text/css"?href=""?/
style
.main-bac?{?-webkit-perspective:1500;?}?/*設(shè)定透視距離*/
.main{
width:200px;?
height:200px;?
margin:?0?auto;
position:relative;
-webkit-transform-style:preserve-3d;
-webkit-transition:-webkit-transform?2s?ease?0s;/*過(guò)渡時(shí)間*/
}
/*基本樣式*/
.main?p{
position:?absolute;?
margin:?0;?
padding:?0;?
width:?200px;?
height:?200px;??
text-align:?center;?
line-height:?200px;?
font-size:?26px;?
opacity:0.5;
}
/*將第一個(gè)元素Z軸向前移動(dòng)100px,形成第一個(gè)面(正面)*/
.main?p:nth-of-type(1)?{
background-color:red;
-webkit-transform:translateZ(100px);
}
/*將第一個(gè)元素Z軸向前移動(dòng)100px,繞x軸旋轉(zhuǎn)90度形成上面的面*/
.main?p:nth-of-type(2)?{
background-color:orange;?
-webkit-transform:rotateX(90deg)?translateZ(100px);
}
/*將第一個(gè)元素Z軸向前移動(dòng)100px,繞x軸旋轉(zhuǎn)-90度形成下邊的面*/
.main?p:nth-of-type(3)?{
background-color:yellow;
-webkit-transform:rotateX(-90deg)?translateZ(100px);
}
/*將第一個(gè)元素Z軸向前移動(dòng)100px,繞y軸旋轉(zhuǎn)90度形成右側(cè)的面*/
.main?p:nth-of-type(4)?{
background-color:green;
-webkit-transform:rotateY(90deg)?translateZ(100px);
}
/*將第一個(gè)元素Z軸向前移動(dòng)100px,繞y軸旋轉(zhuǎn)-90度形成左側(cè)的面*/
.main?p:nth-of-type(5)?{
background-color:#b435bf;
-webkit-transform:rotateY(-90deg)?translateZ(100px);
}
/*將第一個(gè)元素Z軸向前移動(dòng)100px,繞y軸旋轉(zhuǎn)180度形成后面(背面)*/
.main?p:nth-of-type(6)?{
background-color:blue;
-webkit-transform:rotateY(180deg)?translateZ(100px);
}
/*鼠標(biāo)移入時(shí)繞Y軸旋轉(zhuǎn)180度,繞Z軸旋轉(zhuǎn)180度*/
.main:hover?{-webkit-transform:rotateY(180deg)?rotateZ(180deg);?}???
/style
/head
body
div?class="main-bac"
div?class="main"
p言成科技/p
p3D立方體/p
pHTML5學(xué)堂/p
p3D立方體/p
p碼匠/p
pJavaScript/p
/div??????????????
/div
/body
/html
代碼解析
當(dāng)鼠標(biāo)移入的時(shí)候,立方體逐漸的發(fā)生旋轉(zhuǎn)(非突變),圍繞X軸旋轉(zhuǎn)45度的同時(shí),圍繞Y軸旋轉(zhuǎn)45度。
當(dāng)鼠標(biāo)移出立方體時(shí),立方體恢復(fù)到初始狀態(tài)。在最開(kāi)始狀態(tài)時(shí),并沒(méi)有采用無(wú)限遠(yuǎn)的視角,設(shè)置一定的視角,讓剛開(kāi)始時(shí)直視立方體時(shí),不會(huì)覺(jué)得是一個(gè)平面。
3D效果制作-目標(biāo)效果圖
以上資料來(lái)源:《HTML5布局之路》
主要思想:
首先要準(zhǔn)備一張有連續(xù)幀的圖片,然后利用HTML5 Canvas的draw方法在不同的時(shí)間間隔繪制不同的幀,這樣看起來(lái)就像動(dòng)畫(huà)在播放。
關(guān)鍵技術(shù)點(diǎn):
JavaScript 函數(shù)setTimeout()有兩個(gè)參數(shù),第一個(gè)是參數(shù)可以傳遞一個(gè)JavaScript方法,
另外一個(gè)參數(shù)代表間隔時(shí)間,單位為毫秒數(shù)。代碼示例:
setTimeout( update, 1000/30);
Canvas的API-drawImage()方法,需要指定全部9個(gè)參數(shù):
ctx.drawImage(myImage, offw, offh, width,height, x2, y2, width, height);
其中offw, offh是指源圖像的起始坐標(biāo)點(diǎn),width, height表示源圖像的寬與高,x2,y2表
示源圖像在目標(biāo)Canvas上的起始坐標(biāo)點(diǎn)。
!DOCTYPE?html?
html?
head?
meta?http-equiv="X-UA-Compatible"?content="chrome=IE8"?
meta?http-equiv="Content-type"?content="text/html;charset=UTF-8"?
titleCanvas?Mouse?Event?Demo/title?
link?href="default.css"?rel="stylesheet"?/?
script?
var?ctx?=?null;?//?global?variable?2d?context?
var?started?=?false;?
var?mText_canvas?=?null;?
var?x?=?0,?y?=0;?
var?frame?=?0;?//?22?5*5?+?2?
var?imageReady?=?false;?
var?myImage?=?null;?
var?px?=?300;?
var?py?=?300;?
var?x2?=?300;?
var?y2?=?0;?
window.onload?=?function()?{?
var?canvas?=?document.getElementById("animation_canvas");?
console.log(canvas.parentNode.clientWidth);?
canvas.width?=?canvas.parentNode.clientWidth;?
canvas.height?=?canvas.parentNode.clientHeight;?
if?(!canvas.getContext)?{?
console.log("Canvas?not?supported.?Please?install?a?HTML5?compatible?browser.");?
return;?
}?
//?get?2D?context?of?canvas?and?draw?rectangel?
ctx?=?canvas.getContext("2d");?
ctx.fillStyle="black";?
ctx.fillRect(0,?0,?canvas.width,?canvas.height);?
myImage?=?document.createElement('img');?
myImage.src?=?"../robin.png";?
myImage.onload?=?loaded();?
}?
function?loaded()?{?
imageReady?=?true;?
setTimeout(?update,?1000/30);?
}?
function?redraw()?{?
ctx.clearRect(0,?0,?460,?460)?
ctx.fillStyle="black";?
ctx.fillRect(0,?0,?460,?460);?
//?find?the?index?of?frames?in?image?
var?height?=?myImage.naturalHeight/5;?
var?width?=?myImage.naturalWidth/5;?
var?row?=?Math.floor(frame?/?5);?
var?col?=?frame?-?row?*?5;?
var?offw?=?col?*?width;?
var?offh?=?row?*?height;?
//?first?robin?
px?=?px?-?5;?
py?=?py?-?5;?
if(px??-50)?{?
px?=?300;?
}?
if(py??-50)?{?
py?=?300;?
}?
//var?rate?=?(frame+1)?/22;?
//var?rw?=?Math.floor(rate?*?width);?
//var?rh?=?Math.floor(rate?*?height);?
ctx.drawImage(myImage,?offw,?offh,?width,?height,?px,?py,?width,?height);?
//?second?robin?
x2?=?x2?-?5;?
y2?=?y2?+?5;?
if(x2??-50)?{?
x2?=?300;?
y2?=?0;?
}?
ctx.drawImage(myImage,?offw,?offh,?width,?height,?x2,?y2,?width,?height);?
}?
function?update()?{?
redraw();?
frame++;?
if?(frame?=?22)?frame?=?0;?
setTimeout(?update,?1000/30);?
}?
/script?
/head?
body?
h1HTML?Canvas?Animations?Demo?-?By?Gloomy?Fish/h1?
prePlay?Animations/pre?
div?id="my_painter"?
canvas?id="animation_canvas"/canvas?
/div?
/body?
/html
網(wǎng)站名稱(chēng):html5展示特效的簡(jiǎn)單介紹
網(wǎng)站路徑:http://jinyejixie.com/article44/dsdishe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、網(wǎng)站設(shè)計(jì)、品牌網(wǎng)站制作、建站公司、手機(jī)網(wǎng)站建設(shè)、品牌網(wǎng)站設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)