国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > HTML > 正文

后HTML5時代項目該如何玩出新意?

2020-03-24 15:45:32
字體:
供稿:網(wǎng)友

  十二年前,無論多么復(fù)雜的布局,在我們神奇的table面前,都不是問題;

  十年前,阿捷的一本《網(wǎng)站重構(gòu)》,為我們開啟了新的篇章;

  八年前,我們研究yahoo.com,驚嘆它在IE5下都表現(xiàn)得如此完美;

  六年前,Web標準化成了我們的基礎(chǔ)技能,我們開始研究網(wǎng)站性能優(yōu)化;

  四年前,我們開始研究自動化工具,自動化測試,誰沒玩過nodejs都不好意思說是頁面仔;

  二年前,各種終端風(fēng)起云涌,響應(yīng)式、APP開發(fā)都成為了我們研究的范圍,CSS3動畫開始風(fēng)靡;

  如今,CSS3動畫、Canvas、SVG、甚至webGL你已經(jīng)非常熟悉,你是否開始探尋,接下來,我們可以玩什么,來為我們項目帶來一絲新意?

  沒錯,本文就是以HTML5 Device API為核心,對HTML5的一些新接口作了一個完整的測試,希望能讓大家有所啟發(fā)。

  目錄:

  一、讓音樂隨心而動 - 音頻處理 Web audio API

  二、捕捉用戶攝像頭 - 媒體流 Media Capture

  三、你是逗逼? - 語音識別 Web Speech API

  四、讓我盡情呵護你 - 設(shè)備電量 Battery API

  五、獲取用戶位置 - 地理位置 Geolocation API

  六、把用戶捧在手心 - 環(huán)境光 Ambient Light API

  七、陀螺儀 Deviceorientation

  八、Websocket

  九、NFC

  十、震動 - Vibration API

  十一、網(wǎng)絡(luò)環(huán)境 Connection API

  一、讓音樂隨心而動 - 音頻處理 Web audio API

  簡介:

  Audio對象提供的只是音頻文件的播放,而Web Audio則是給了開發(fā)者對音頻數(shù)據(jù)進行分析、處理的能力,比如混音、過濾。

  系統(tǒng)要求:

  ios6+、android chrome、android firefox

  實例:


  http://sy.qq.com/brucewan/device-api/web-audio.html

  核心代碼:

  var context = new webkitAudioContext();var source = context.createBufferSource(); // 創(chuàng)建一個聲音源source.buffer = buffer; // 告訴該源播放何物 createBufferSourcesource.connect(context.destination); // 將該源與硬件相連source.start(0); //播放

  技術(shù)分析:

  當我們加載完音頻數(shù)據(jù)后,我們將創(chuàng)建一個全局的AudioContext對象來對音頻進行處理,AudioContext可以創(chuàng)建各種不同功能類型的音頻節(jié)點AudioNode,比如

后HTML5時代項目該如何玩出新意?

  1、源節(jié)點(source node)

  我們可以使用兩種方式加載音頻數(shù)據(jù):

  <1>、audio標簽

  var sound, audio = new Audio();

  audio.addEventListener('canplay', function() {

  sound = context.createMediaElementSource(audio);

  sound.connect(context.destination);

  });

  audio.src = '/audio.mp3';

  <2>、XMLHttpRequest

  var sound, context = createAudioContext();var audioURl = '/audio.mp3'; // 音頻文件URLvar xhr = new XMLHttpRequest();

  xhr.open('GET', audioURL, true);

  xhr.responseType = 'arraybuffer';

  xhr.onload = function() {

  context.decodeAudioData(request.response, function (buffer) {

  source = context.createBufferSource();

  source.buffer = buffer;

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 江安县| 密山市| 兴海县| 太白县| 白朗县| 伊川县| 延寿县| 桃园市| 濉溪县| 石景山区| 岑溪市| 堆龙德庆县| 游戏| 彭水| 乌拉特后旗| 南部县| 雷州市| 永康市| 旅游| 夏津县| 吴桥县| 周至县| 子长县| 乌兰察布市| 兖州市| 建平县| 昭平县| 柯坪县| 阳曲县| 河南省| 鹤壁市| 乾安县| 文化| 收藏| 武陟县| 临汾市| 益阳市| 宣武区| 弥勒县| 娱乐| 城固县|