impress.js表現(xiàn)層框架的示例分析-創(chuàng)新互聯(lián)

這篇文章主要介紹impress.js表現(xiàn)層框架的示例分析,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

成都創(chuàng)新互聯(lián)公司主營寧都網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,app軟件開發(fā),寧都h5成都微信小程序搭建,寧都網(wǎng)站營銷推廣歡迎寧都等地區(qū)企業(yè)咨詢


------------------正文分割線------------------
概述
如果你已經(jīng)厭煩了使用PowerPoint制作PPT,那么impress.js是一個非常好的選擇,用它做的PPT更加直觀,效果也非常的不錯。裝X是需要一定代價的,不過如果你是個前端愛好者那么一切就沒問題了。當(dāng)然如果你能勉強明白HTML和CSS也沒問題,看看這篇文章 + 一點點實踐(把官網(wǎng)上的例子拿來改改)即可...
impress.js 是國外一位開發(fā)者受 Prezi 啟發(fā),采用 CSS3 與 JavaScript 語言完成的一個可供開發(fā)者使用的表現(xiàn)層框架(演示工具)。現(xiàn)在普通開發(fā)者可以利用 impress.js 自己開發(fā)出類似效果的演示工具,但性能比基于 FLASH 的 Prezi 更優(yōu)。其功能包括畫布的無限旋轉(zhuǎn)與縮放,任意角度放置任意大小的文字,CSS3 3D 效果支持等。同時,也支持傳統(tǒng) PowerPoint 形式的幻燈演示。
目前 impress.js 是基于 webkit 瀏覽器(Chrome、Safari)開發(fā),而在其它基于非 webkit 引擎,但支持 CSS3 3D 的瀏覽器也能正常運行。
impreess源碼已經(jīng)發(fā)布在GitHub上,地址:/tupian/20230522/impress.js
官方demo地址:http://bartaz.github.com/impress.js
因為在其項目網(wǎng)頁中卻沒有找到說明文檔&使用文檔,所以這篇文章將一步一步創(chuàng)建一個較初級的演示文稿,我們接著往下走。
請準(zhǔn)備好現(xiàn)代瀏覽器:Google Chrome(效果很好)、Safari或FF.
*我的IE10不支持,不知道為什么很多資料上寫著IE10也能支持,背了個催。

配置
html5頁面結(jié)構(gòu)先準(zhǔn)備就緒
創(chuàng)建一個id="impress"的wrapper(載體),直接div就好,其他標(biāo)簽同樣也可以
在body標(biāo)簽結(jié)束前引入impress.js文件并且調(diào)用
class="impress-not-supported"是當(dāng)瀏覽器不支持時顯示給用戶的提示信息,降級處理你懂的,不多解釋哈



代碼如下:


<!doctype html>
<html>
<head>
<title>darren - Impress demo</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="http://bartaz.github.com/impress.js/css/impress-demo.css" rel="stylesheet" />
</head>
<body>
<div class="impress-not-supported">
</div>
<div id="impress">
</div>
<script src="http://bartaz.github.com/impress.js/js/impress.js"></script>
<script>impress().init();</script>
</body>
</html>



在wrapper內(nèi)創(chuàng)建一個幻燈片只需要新建一個class="step"的<div>即可。<div>的id可有可無,當(dāng)有id時url中的hash變化是隨著id走;反之就是step-[num],如



代碼如下:


<div class="step">
first slide
</div>



數(shù)據(jù)屬性:用來描述幻燈片大小,切換等效果。
data-x = 幻燈片的x坐標(biāo)
data-y = 幻燈片的y坐標(biāo)
data-scale = 通過指定一個值來進(jìn)行縮放,data-scale為5則將會在你幻燈片原始尺寸基礎(chǔ)放大5倍
data-rotate = 通過一個數(shù)字度數(shù)來確定旋轉(zhuǎn)你的幻燈片
data-rotate-x = 為3D用,這個數(shù)字度數(shù)是它應(yīng)該相對x軸旋轉(zhuǎn)多少度。(前傾/后仰)
data-rotate-y = 為3D用,這個數(shù)字度數(shù)是它應(yīng)該相對y軸旋轉(zhuǎn)多少度。 (左擺/右擺)
data-rotate-z = 為3D用,這個數(shù)字度數(shù)是它應(yīng)該相對z軸旋轉(zhuǎn)多少度。

創(chuàng)建
數(shù)據(jù)屬性那段是你接下來需要重點打交道的,接下來開始step by step創(chuàng)建一個演示文稿。
從一個初始的幻燈片開始,這個幻燈片已將它data-x和data-y數(shù)據(jù)屬性設(shè)置為0,所以會出現(xiàn)在頁面的中間。



代碼如下:


<div class="step" data-x="0" data-y="0">
This is slide 1 - 【標(biāo)題】
</div>



第二個幻燈片的data-x值為500、data-y值為0,活動的時候它將會向左平移(滑動)500px的地方。



代碼如下:


<div class="step" data-x="500" data-y="-400">
This is slide 2
</div>



第三張幻燈片其data-x值不變,data-y位置為-400,這將會是從頂部400px處滑入屏幕。



代碼如下:


<div class="step" data-x="500" data-y="-400">
This is slide 3
</div>



第四張幻燈片來個新花樣,使用data-scale的值控制其縮放大小。data-scale="0.5"表示著它應(yīng)該是一半的尺寸,當(dāng)它變成活動的演示時將通過必需的倍數(shù)調(diào)節(jié)所有幻燈片的縮放尺寸,從這一步絢麗開始起步



代碼如下:


<div class="step" data-x="500" data-y="-800" data-scale="0.5">
This is slide 4
</div>



第五張幻燈片旋轉(zhuǎn)屬性允許你旋轉(zhuǎn)一個幻燈片到當(dāng)前視圖,幻燈片5被設(shè)置旋轉(zhuǎn)90度,視覺效果微叼哈



代碼如下:


<div class="step" data-x="0" data-y="-800" data-rotate="90">
This is slide 5
</div>



第六張幻燈片開始3D style,可為每個維度的軸指定旋轉(zhuǎn)屬性(x,y,z)。x軸是橫軸,意思是你可使事物傾斜(正值)或向后(負(fù)值),y軸是豎軸,所以你可使事物向左搖擺(負(fù)值)或向右(正值),z軸是縱軸,這將是旋轉(zhuǎn)的東西向上(負(fù)值)和向下(正值)。



代碼如下:


<div class="step" data-x="-1200" data-y="0"
data-rotate-x="30" data-rotate-y="-30" data-rotate-z="90" data-scale="4">
This is slide 6
</div>



以上6張幻燈片把數(shù)據(jù)屬性內(nèi)的值都過了一遍,一張略high的演示文稿就呈現(xiàn)在我們眼前。你可以以你的想象力用不可思議的和令人驚奇的方式合并這些效果來創(chuàng)建你自己的幻燈片展示風(fēng)格。
全局預(yù)覽
個人超贊這個視覺體驗,把所有的幻燈片都平行的展示,排列的合理會非常帥氣,使用方式就是在幻燈片6后面插入一段html.



代碼如下:


<div id="overview" class="step" data-x="-200" data-y="-500" data-scale="3"></div>



隨著你幻燈片位置的不同所以全局預(yù)覽的值也會不一樣,拿著結(jié)尾處的demo一點一點調(diào)整找感覺,希望你會喜歡!
完成后請記住它,用它做的不只局限于此,的限制是你的創(chuàng)造力!

個人體會
正因為我們是前端,所以用前端技術(shù)做做各種嘗試沒什么不好,impress更可以讓我們的演示文稿更有新意,所以簡單了解下絕對是值得的,學(xué)習(xí)是好的投資。
優(yōu)點
個人非常喜歡overview的功能
因為HTML+CSS都需要自己完成,位置和效果都得自己經(jīng)手,視覺效果都由自己掌控
在我用過的同類產(chǎn)品中視覺效果最絢,CSS3+3D效果,直接給觀眾看暈:)
缺點
impress在視覺表現(xiàn)上確實非常強大,比起同樣做演示文稿的 html5slides 和 deck.js, impress.js的復(fù)雜度上高了不少,而且如果想把演示文稿排版的好看可能需要花掉大量的時間.
*如果閑impress麻煩的朋友可以去看看 html5slides 和 deck.js的資料,視覺效果會稍差一些,不過上手會簡單不少。
不要把3D和旋轉(zhuǎn)用得太花哨、太絢,看的人會暈,恰當(dāng)就好哈

以下是demo代碼,初學(xué)者自己動手多改改感覺就好了。



代碼如下:


<!doctype html>
<html>
<head>
<title>darren - Impress demo</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link href="http://bartaz.github.com/impress.js/css/impress-demo.css" rel="stylesheet" />
</head>
<body>
<div class="impress-not-supported">
<div class="fallback-message">
<p>你的瀏覽器<b>不支持</b> impress.js, 所以當(dāng)前展示的是簡化版。</p>
<p>為了獲得更好的體驗,請使用新的 <b>Chrome</b>, <b>Safari</b> 或者 <b>Firefox</b> 瀏覽器。</p>
</div>
</div>
<div id="impress">
<div class="step" data-x="0" data-y="0">
Darren code - [標(biāo)題]
</div>
<div class="step" data-x="500" data-y="0">
This is slide 2
</div>
<div class="step" data-x="500" data-y="-400">
This is slide 3
</div>
<div class="step" data-x="500" data-y="-800" data-scale="0.5">
This is slide 4
</div>
<div class="step" data-x="0" data-y="-800" data-rotate="90">
This is slide 5
</div>
<div class="step" data-x="-1200" data-y="0" data-rotate-x="30" data-rotate-y="-30" data-rotate-z="90" data-scale="4">
This is slide 6
</div>
<!-- darren code -->
<div id="overview" class="step" data-x="-200" data-y="-500" data-scale="3"></div>
</div>
<script src="http://bartaz.github.com/impress.js/js/impress.js"></script>
<script>impress().init();</script>
</body>
</html>


以上是“impress.js表現(xiàn)層框架的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

當(dāng)前文章:impress.js表現(xiàn)層框架的示例分析-創(chuàng)新互聯(lián)
本文地址:http://muchs.cn/article8/hooip.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序網(wǎng)站導(dǎo)航移動網(wǎng)站建設(shè)、網(wǎng)站維護(hù)、網(wǎng)站營銷、網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名