爲何作這個項目:實際上是由於今年是乙亥豬年,因此就想結合所學知識實踐一下,因此想來想去,最終決定了畫小豬佩奇給你們賀新年,小豬佩奇身上紋,掌聲送給社會人。javascript
下面是我項目的代碼和預覽連接,以爲項目好看又實用的小夥伴,隨手給個star, 您的star是我最大的動力!!!
項目源碼 預覽連接css
移動端實現效果的展現,點擊download下載觀看html
這一項目的主題的是畫一隻小豬佩奇給你賀新年,好了,廢話很少說,咱們進入正題: 項目預覽圖:html5
該項目支持PC端和移動端觀看,PC端食用效果更佳,製做思路:java
html、css
實現小豬佩奇的靜態效果jQuery、JavaScript
實現動態向style
標籤添加樣式展現效果和向pre
標籤添加文本,添加調速功能prism.js
實現代碼高亮CSS
繪製過程技術棧:jQuery、JavaScript、html五、CSS3
css3
注:主要使用到是css3的border-radius,
曲線救國。git
解決辦法:將不影響小豬佩奇在頁面展現效果的樣式,通通放到一個css
文件,提早加載好部分樣式,當頁面輸出文本的時候,展現關鍵的樣式便可,這個問題就這樣解決啦,還有的話,就是我發如今電腦上播放的時間的好像比手機上播放少和不一樣手機的播放時間是不同的,這裏就要吐槽一下本身的手機啦,手機播放所用的時間是過久了,手機使用時間長也就是這個樣子啦!github
解決辦法:因爲setInterval
不能確保兩次執行之間有固定的間隔,因此不用setInterval
,而是每次執行結束後,使用setTimeout
指定下一次執行的具體時間。瀏覽器
小demo:bash
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JS Bin</title>
</head>
<body>
<span id="text"></span>
<script> /*var text = document.getElementById('text') var i = 0; var id = setInterval(function(){ i += 1; if(i < 10){ text.innerText = i }else{ clearInterval(id) } },500)*/ // setTimeout 代替 setInterval var text = document.getElementById('text') var i = 0; var id = setTimeout(function fn(){ i += 1; if(i < 10){ text.innerText = i }else{ clearTimeout(id) } id = setTimeout(fn, 2000); },500) </script>
</body>
</html>
複製代碼
其實嘛,這個坑是本身偏要去踩的,原本實現好總體功能以後,就該結束了,可是本身恰恰想要有一個背景音樂,那就去作吧,踩坑了,我發現不能在Chrome瀏覽器上自動播放,那怎麼辦?我能怎麼辦?去Google
吧,我知道Chrome 66
已經禁止聲音自動播放,那電腦上的其餘瀏覽器和手機上的瀏覽器也有可能會禁止聲音自動播放,我思考出解決辦法,那就是: 既然瀏覽器你不讓我聲音自動播放,那我加一個引導用戶點擊的按鈕,如「開始」或者「開啓音效」之類的,必需要讓用戶點一下,使得背景音樂播放了。
jQuery
時,想要調用音樂的play()方法時,發現 $(「#audio」).play();
不起做用,而且報錯 play()
方法 undefined
。解決辦法:
報錯說明了這個jQuery
對象沒有這個play
方法使用原生document
方法便可調用
var audio = document.getElementById('audio');
audio.play();
audio.stop();
複製代碼
克隆項目到本地:
git clone git@github.com:xyyojl/make-a-peppa.git
複製代碼
進入項目:
cd make-a-peppa
複製代碼
而後啓動server
服務器,前提是你已經安裝了http-server
,其實啓不啓動服務器都不是很大問題。
http-server -c -1
複製代碼
而後就能夠在瀏覽器地址欄裏輸入localhost:8080
訪問了。