Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
念:
HTML5 是HTML、XHTML 以及 HTML DOM 的新標(biāo)準(zhǔn)(推薦標(biāo)準(zhǔn))。
語(yǔ)法:
根據(jù)HTML5設(shè)計(jì)化繁為簡(jiǎn)的準(zhǔn)則,文檔類(lèi)型和字符說(shuō)明都進(jìn)行了簡(jiǎn)化:
<!DOCTYPE html> <meta charset='UTF-8'> .......
HTML5元素
HTML5定義了一組新的語(yǔ)義化標(biāo)記來(lái)描述元素的內(nèi)容。
header 標(biāo)記頭部區(qū)域的內(nèi)容。 footer 標(biāo)記腳部區(qū)域的內(nèi)容 section 頁(yè)面中的一塊區(qū)域 article 獨(dú)立的文章內(nèi)容 aside 相關(guān)內(nèi)容或者引文 nav 導(dǎo)航類(lèi) video:定義視頻,比如 電影片段或其他視頻流 <video src='movie.ogg' controls='controls'>video元素</video> audio:定義音頻,比如音樂(lè)或其他音頻流 <audio src='audio.wav'>audio元素</audio> ...........
HTML5其他功能
HTML5引入了一種用于用于查找頁(yè)面DOM元素的selectors API。
document.querySelector("#demo")--->返回文檔中匹配指定 CSS 選擇器的第一個(gè)元素。 document.querySelectorAll("#demo")--->返回文檔中匹配指定 CSS 選擇器的所有元素。
html5文檔結(jié)構(gòu)代碼
html5 有什么神奇? 就是進(jìn)化的一套標(biāo)準(zhǔn)。
我是不是整理的都好初級(jí),不過(guò)整理即鞏固加回憶,只要是好好學(xué)習(xí),那么時(shí)間就不是浪費(fèi),那么道路就一定是正確的!!加油啊 小果凍de邁阿密!!
很多人感覺(jué)黑客很酷,在電腦前敲擊敲擊鍵盤(pán)就可以控制整個(gè)世界,“是的,他們是很酷”,但是他們背后要付出多少努力呢?
想當(dāng)黑客必須具備三方面知識(shí):第一是背景知識(shí),需要理解語(yǔ)言結(jié)構(gòu)、操作系統(tǒng)、網(wǎng)絡(luò)、計(jì)算機(jī)體系結(jié)構(gòu)等原理;第二必須能夠熟練使用各種黑客攻擊工具,尋找系統(tǒng)漏洞并實(shí)施攻擊是一項(xiàng)重復(fù)性工作,靈活使用各種黑客攻擊工具可以將這項(xiàng)工作自動(dòng)化,并以人們易于理解的圖形方式展現(xiàn)復(fù)雜的系統(tǒng)結(jié)構(gòu);第三必須掌握幾種編程語(yǔ)言,無(wú)論黑客攻擊工具多么強(qiáng)大,進(jìn)行高難度黑客攻擊時(shí),必須親自編寫(xiě)適合自己使用的工具,此時(shí)需要掌握編程語(yǔ)言。一名真正的黑客肯定是一名合格的程序員,基礎(chǔ)的編程語(yǔ)言是必須的,今天我就簡(jiǎn)單介紹一下,“入門(mén)級(jí)小白”和“職業(yè)大牛”都需要掌握哪些編程語(yǔ)言?
一、 初級(jí)階段需要掌握什么編程語(yǔ)言?
初級(jí)階段建議先從Python開(kāi)始。Python 是一個(gè)高層次的結(jié)合了解釋性、編譯性、互動(dòng)性和面向?qū)ο蟮哪_本語(yǔ)言。它設(shè)計(jì)清晰,文檔齊全,對(duì)初學(xué)者很合適。Python 的設(shè)計(jì)具有很強(qiáng)的可讀性,相比其他語(yǔ)言經(jīng)常使用英文關(guān)鍵字,其他語(yǔ)言的一些標(biāo)點(diǎn)符號(hào),它具有比其他語(yǔ)言更有特色語(yǔ)法結(jié)構(gòu)。
作為黑客首選的編程語(yǔ)言Python,具有如下優(yōu)點(diǎn):
1、豐富的庫(kù)。
Python標(biāo)準(zhǔn)庫(kù)確實(shí)很龐大。python有可定義的第三方庫(kù)可以使用。它可以幫助你處理各種工作,包括正則表達(dá)式、文檔生成、單元測(cè)試、線(xiàn)程、數(shù)據(jù)庫(kù)、網(wǎng)頁(yè)瀏覽器、CGI、FTP、電子郵件、XML、XML-RPC、HTML、WAV文件、密碼系統(tǒng)、GUI(圖形用戶(hù)界面)、Tk和其他與系統(tǒng)有關(guān)的操作。記住,只要安裝了Python,所有這些功能都是可用的。這被稱(chēng)作Python的“功能齊全”理念。除了標(biāo)準(zhǔn)庫(kù)以外,還有許多其他高質(zhì)量的庫(kù),如wxPython、Twisted和Python圖像庫(kù)等等。Python 提供多種庫(kù),用于支持黑客攻擊,比如 pydbg、scapy、sqlmap、httplib 等。目前,這些庫(kù)被廣泛應(yīng)用于各種黑客攻擊。
2、能夠訪(fǎng)問(wèn)各種 API。
Python 提供了 ctypes 庫(kù), 借 助 它, 黑 客 可 以 訪(fǎng) 問(wèn) Windows、OS X、Linux、Solaris、FreeBSD、OpenBSD 等系統(tǒng)提供的 DLL 與共享庫(kù)。
3、可移植性
由于它的開(kāi)源本質(zhì),Python已經(jīng)被移植在許多平臺(tái)上(經(jīng)過(guò)改動(dòng)使它能夠工作在不同平臺(tái)上)。如果你小心地避免使用依賴(lài)于系統(tǒng)的特性,那么你的所有Python程序無(wú)需修改就可以在下述任何平臺(tái)上面運(yùn)行。這些平臺(tái)包括Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE甚至還有PocketPC、Symbian以及Google基于linux開(kāi)發(fā)的Android平臺(tái)!
4、大量黑客攻擊工具提供 Python API。
最具代表性的黑客攻擊工具有 sqlmap、Nmap、Metasploit 等,它們都提供 Python 擴(kuò)展接口。黑客使用 Python 可以將這些工具打造得更強(qiáng)大。
5、易學(xué)易用。
作為初學(xué)python的科班出身的小白,python非常簡(jiǎn)單,非常適合人類(lèi)閱讀。閱讀一個(gè)良好的Python程序就感覺(jué)像是在讀英語(yǔ)一樣!Python的這種偽代碼本質(zhì)是它最大的優(yōu)點(diǎn)之一。它使你能夠?qū)W⒂诮鉀Q問(wèn)題而不是去搞明白語(yǔ)言本身Python 語(yǔ)言易學(xué)易用,現(xiàn)在好多線(xiàn)上兒童學(xué)習(xí)編程多數(shù)采用的就是Python語(yǔ)言編程。
6、除了以上優(yōu)點(diǎn),Python 還提供了豐富多樣的模塊,這些模塊幾乎可以直接用于所有黑客攻擊領(lǐng)域。
對(duì)于黑客攻擊模塊不提供的領(lǐng)域,可以借由 ctypes 調(diào)用操作系統(tǒng)提供的原生 API。簡(jiǎn)言之,使用 Python 幾乎可以攻擊所有領(lǐng)域,比如應(yīng)用程序、Web、網(wǎng)絡(luò)、系統(tǒng)等,下面分別介紹各領(lǐng)域 Python 黑客攻擊技術(shù)。
· 應(yīng)用程序黑客攻擊:可以向運(yùn)行中的應(yīng)用程序插入任意 DLL 或者源代碼,攔截用戶(hù)的鍵盤(pán)輸入以盜取密碼。此外,還可以將黑客攻擊代碼插入圖片文件,在網(wǎng)絡(luò)散布傳播。
· Web 黑客攻擊:可以創(chuàng)建網(wǎng)頁(yè)爬蟲(chóng),收集 Web 頁(yè)面包含的鏈接,實(shí)現(xiàn) SQL 注入,向處理用戶(hù)輸入的部分注入錯(cuò)誤代碼。使用 Python 可以實(shí)現(xiàn)簡(jiǎn)單的網(wǎng)絡(luò)瀏覽器功能,通過(guò)操縱 HTTP 包,上傳 Web shell 攻擊所需文件。
· 網(wǎng)絡(luò)黑客攻擊:可以實(shí)施網(wǎng)絡(luò)踩點(diǎn),搜索系統(tǒng)開(kāi)放的端口,收集并分析網(wǎng)絡(luò)上的數(shù)據(jù)包,進(jìn)行網(wǎng)絡(luò)嗅探。偽裝服務(wù)器地址,實(shí)施 IP 欺騙攻擊,非法盜取敏感信息。也可以大量發(fā)送數(shù)據(jù)包,實(shí)施拒絕服務(wù)式攻擊,使服務(wù)器陷入癱瘓,無(wú)法正常對(duì)外提供服務(wù)。
· 系統(tǒng)黑客攻擊:黑客可以編寫(xiě)后門(mén)程序以控制用戶(hù) PC,開(kāi)發(fā)用于搜索并修改 PC 注冊(cè)表的功能。還可以利用應(yīng)用程序的錯(cuò)誤,通過(guò)緩沖區(qū)溢出或格式字符串實(shí)施攻擊。
所以針對(duì)“入門(mén)級(jí)小白”可以首選Python編程語(yǔ)言進(jìn)行學(xué)習(xí)。
二、 職業(yè)進(jìn)級(jí)階段需要學(xué)習(xí)什么編程語(yǔ)言?
一般來(lái)說(shuō),要成為一名真正意義的“黑客”,至少需要掌握 3-4 種編程語(yǔ)言。其中最具代表性的是 C 、C++語(yǔ)言,它們?cè)诜治鱿到y(tǒng)與程序行為的過(guò)程中起著核心作用。
首先我們先講講C、C++語(yǔ)言,這兩種編程語(yǔ)言為何是一個(gè)職業(yè)黑客必須掌握的基礎(chǔ)語(yǔ)言?
黑客界,有兩樣重要的課程,一是計(jì)算機(jī)的本質(zhì),二是編譯原理。相對(duì)于匯編等底層語(yǔ)言,它簡(jiǎn)單;相對(duì)于其它高級(jí)語(yǔ)言,它更為接近計(jì)算機(jī);同樣它對(duì)黑客的兩大課程很有幫助。所以可以這么說(shuō),只要稍微厲害的黑客,必定精通C、C++語(yǔ)言。
由于C語(yǔ)言,C++這兩種比較靠近底層的語(yǔ)言 一般來(lái)說(shuō)市面上比較流行的操作系統(tǒng)windows和linux,windows上面的病毒和被攻擊的最厲害。所以想在這個(gè)上面玩一些破解必須掌握windows api這些接口的使用,找破解的對(duì)象首先要了解破解對(duì)象所在生存環(huán)境。這些生存環(huán)境基本上不是c就是c++的編程環(huán)境。現(xiàn)在常見(jiàn)的病毒軟件就是利用windows系統(tǒng)的漏洞注入到系統(tǒng)中,然后伺機(jī)做壞事。截取你的鍵盤(pán)或者鼠標(biāo)之類(lèi)的。目前這類(lèi)的病毒軟件也是最多的,安全軟件處理最多的也是著這類(lèi)。要不360安全大師背后養(yǎng)著多少黑客出身的超級(jí)高手,就是為了對(duì)抗這些不安分的小嘍啰。目前基于linux系統(tǒng)的服務(wù)器用的最多,被攻擊的也最多,這就需要熟悉linux系統(tǒng)的組成以及內(nèi)核構(gòu)造,linux內(nèi)核是c語(yǔ)言所寫(xiě)。但凡涉及到系統(tǒng)層面的東西都離不開(kāi)c和c++所以想做點(diǎn)壞事也是需要一定的編程資本。
接下來(lái)簡(jiǎn)單介紹一下這兩種編程語(yǔ)言。
C語(yǔ)言基本定義:
C語(yǔ)言是一門(mén)通用計(jì)算機(jī)編程語(yǔ)言,廣泛應(yīng)用于底層開(kāi)發(fā)。C語(yǔ)言的設(shè)計(jì)目標(biāo)是提供一種能以簡(jiǎn)易的方式編譯、處理低級(jí)存儲(chǔ)器、產(chǎn)生少量的機(jī)器碼以及不需要任何運(yùn)行環(huán)境支持便能運(yùn)行的編程語(yǔ)言。盡管C語(yǔ)言提供了許多低級(jí)處理的功能,但仍然保持著良好跨平臺(tái)的特性,以一個(gè)標(biāo)準(zhǔn)規(guī)格寫(xiě)出的C語(yǔ)言程序可在許多電腦平臺(tái)上進(jìn)行編譯,甚至包含一些嵌入式處理器(單片機(jī)或稱(chēng)MCU)以及超級(jí)電腦等作業(yè)平臺(tái)。
C語(yǔ)言?xún)?yōu)點(diǎn):
1、簡(jiǎn)潔緊湊、靈活方便
C語(yǔ)言一共只有32個(gè)關(guān)鍵字,9種控制語(yǔ)句,程序書(shū)寫(xiě)自由,主要用小寫(xiě)字母表示。它把高級(jí)語(yǔ)言的基本結(jié)構(gòu)和語(yǔ)句與低級(jí)語(yǔ)言的實(shí)用性結(jié)合起來(lái)。 C 語(yǔ)言可以象匯編語(yǔ)言一樣對(duì)位、字節(jié)和地址進(jìn)行操作, 而這三者是計(jì)算機(jī)最基本的工作單元。
2、運(yùn)算符豐富
C的運(yùn)算符包含的范圍很廣泛,共有種34個(gè)運(yùn)算符。C語(yǔ)言把括號(hào)、賦值、強(qiáng)制類(lèi)型轉(zhuǎn)換等都作為運(yùn)算符處理。從而使C的運(yùn)算類(lèi)型極其豐富表達(dá)式類(lèi)型多樣化,靈活使用各種運(yùn)算符可以實(shí)現(xiàn)在其它高級(jí)語(yǔ)言中難以實(shí)現(xiàn)的運(yùn)算。
3、數(shù)據(jù)結(jié)構(gòu)豐富
C的數(shù)據(jù)類(lèi)型有:整型、實(shí)型、字符型、數(shù)組類(lèi)型、指針類(lèi)型、結(jié)構(gòu)體類(lèi)型、共用體類(lèi)型等。能用來(lái)實(shí)現(xiàn)各種復(fù)雜的數(shù)據(jù)類(lèi)型的運(yùn)算。并引入了指針概念,使程序效率更高。另外C語(yǔ)言具有強(qiáng)大的圖形功能, 支持多種顯示器和驅(qū)動(dòng)器。且計(jì)算功能、邏輯判斷功能強(qiáng)大。
4、C是結(jié)構(gòu)式語(yǔ)言
結(jié)構(gòu)式語(yǔ)言的顯著特點(diǎn)是代碼及數(shù)據(jù)的分隔化,即程序的各個(gè)部分除了必要的信息交流外彼此獨(dú)立。這種結(jié)構(gòu)化方式可使程序?qū)哟吻逦? 便于使用、維護(hù)以及調(diào)試。C語(yǔ)言是以函數(shù)形式提供給用戶(hù)的,這些函數(shù)可方便的調(diào)用,并具有多種循環(huán)、條件語(yǔ)句控制程序流向,從而使程序完全結(jié)構(gòu)化。
5、C語(yǔ)法限制不太嚴(yán)格、程序設(shè)計(jì)自由度大
一般的高級(jí)語(yǔ)言語(yǔ)法檢查比較嚴(yán),能夠檢查出幾乎所有的語(yǔ)法錯(cuò)誤。而C語(yǔ)言允許程序編寫(xiě)者有較大的自由度。
6、C語(yǔ)言允許直接訪(fǎng)問(wèn)物理地址,可以直接對(duì)硬件進(jìn)行操作
因此既具有高級(jí)語(yǔ)言的功能,又具有低級(jí)語(yǔ)言的許多功能,能夠象匯編語(yǔ)言一樣對(duì)位、字節(jié)和地址進(jìn)行操作,而這三者是計(jì)算機(jī)最基本的工作單元,可以用來(lái)寫(xiě)系統(tǒng)軟件。
7、C語(yǔ)言程序生成代碼質(zhì)量高,程序執(zhí)行效率高
一般只比匯編程序生成的目標(biāo)代碼效率低10へ20%。
8、 C語(yǔ)言適用范圍大,可移植性好
C語(yǔ)言有一個(gè)突出的優(yōu)點(diǎn)就是適合于多種操作系統(tǒng), 如DOS、UNIX,也適用于多種機(jī)型
C++語(yǔ)言基本定義:
C++是C語(yǔ)言的繼承,它既可以進(jìn)行C語(yǔ)言的過(guò)程化程序設(shè)計(jì),又可以進(jìn)行以抽象數(shù)據(jù)類(lèi)型為特點(diǎn)的基于對(duì)象的程序設(shè)計(jì),還可以進(jìn)行以繼承和多態(tài)為特點(diǎn)的面向?qū)ο蟮某绦蛟O(shè)計(jì)。C++擅長(zhǎng)面向?qū)ο蟪绦蛟O(shè)計(jì)的同時(shí),還可以進(jìn)行基于過(guò)程的程序設(shè)計(jì)。
C++語(yǔ)言?xún)?yōu)點(diǎn):
1、C++設(shè)計(jì)成靜態(tài)類(lèi)型、和C同樣高效且可移植的多用途程序設(shè)計(jì)語(yǔ)言。
2、C++設(shè)計(jì)直接的和廣泛的支持多種程序設(shè)計(jì)風(fēng)格(程序化程序設(shè)計(jì)、資料抽象化、面向?qū)ο蟪绦蛟O(shè)計(jì)、泛型程序設(shè)計(jì))。
3、C++設(shè)計(jì)無(wú)需復(fù)雜的程序設(shè)計(jì)環(huán)境。
4、C++語(yǔ)言靈活,運(yùn)算符的數(shù)據(jù)結(jié)構(gòu)豐富、具有結(jié)構(gòu)化控制語(yǔ)句、程序執(zhí)行效率高,而且同時(shí)具有高級(jí)語(yǔ)言與匯編語(yǔ)言的優(yōu)點(diǎn),與其它語(yǔ)言相比 ,可以直接訪(fǎng)問(wèn)物理地址,與匯編語(yǔ)言相比又具有良好的可讀性和可移植性。
總得來(lái)說(shuō),C++語(yǔ)言的主要特點(diǎn)表現(xiàn)在兩個(gè)方面,一是盡量兼容C,二是支持面向?qū)ο蟮姆椒āK俪至薈的簡(jiǎn)潔、高效的接近匯編語(yǔ)言等特點(diǎn),對(duì)C的類(lèi)型系統(tǒng)進(jìn)行了改革的擴(kuò)充,因此C++比C更安全,C++的編譯系統(tǒng)能檢查出更多的類(lèi)型錯(cuò)誤。另外,由于C語(yǔ)言的廣泛使用,因而極大的促進(jìn)了C++的普及和推廣。
C++語(yǔ)言最有意義的方面是支持面向?qū)ο蟮奶卣鳌?/p>
C和C++的區(qū)別:
C是一個(gè)結(jié)構(gòu)化語(yǔ)言,它的重點(diǎn)在于算法和數(shù)據(jù)結(jié)構(gòu)。C程序的設(shè)計(jì)首要考慮的是如何通過(guò)一個(gè)過(guò)程,對(duì)輸入(或環(huán)境條件)進(jìn)行運(yùn)算處理得到輸出(或?qū)崿F(xiàn)過(guò)程(事務(wù))控制)。
C++,首要考慮的是如何構(gòu)造一個(gè)對(duì)象模型,讓這個(gè)模型能夠契合與之對(duì)應(yīng)的問(wèn)題域,這樣就可以通過(guò)獲取對(duì)象的狀態(tài)信息得到輸出或?qū)崿F(xiàn)過(guò)程(事務(wù))控制。 所以C與C++的最大區(qū)別在于它們的用于解決問(wèn)題的思想方法不一樣。之所以說(shuō)C++比C更先進(jìn),是因?yàn)椤?設(shè)計(jì)這個(gè)概念已經(jīng)被融入到C++之中 ”。
C與C++的最大區(qū)別:在于它們的用于解決問(wèn)題的思想方法不一樣。之所以說(shuō)C++比C更先進(jìn),是因?yàn)椤?設(shè)計(jì)這個(gè)概念已經(jīng)被融入到C++之中 ”,而就語(yǔ)言本身而言,在C中更多的是算法的概念。那么是不是C就不重要了,錯(cuò)!算法是程序設(shè)計(jì)的基礎(chǔ),好的設(shè)計(jì)如果沒(méi)有好的算法,一樣不行。而且,“C加上好的設(shè)計(jì)”也能寫(xiě)出非常好的東西。
講了這么多,學(xué)習(xí)的過(guò)程中是艱苦的也是快樂(lè)的,想真的掌握編程語(yǔ)言,確實(shí)不容易,需要理論學(xué)習(xí),更需要實(shí)踐鍛煉,所以為了達(dá)到更高的學(xué)習(xí)效率,可以每天學(xué)習(xí)完理論后,給自己定一個(gè)實(shí)驗(yàn)?zāi)繕?biāo),然后做好筆記,這樣每天進(jìn)步一點(diǎn),離成為真正意義的“黑客”就不遠(yuǎn)了。
音在HTML中可以以不同的方式播放.
問(wèn)題以及解決方法
在 HTML 中播放音頻并不容易!
您需要諳熟大量技巧,以確保您的音頻文件在所有瀏覽器中(Internet Explorer, Chrome, Firefox, Safari, Opera)和所有硬件上(PC, Mac , iPad, iPhone)都能夠播放。
在這W3CSchool 為您總結(jié)了問(wèn)題和解決方法。
使用插件
瀏覽器插件是一種擴(kuò)展瀏覽器標(biāo)準(zhǔn)功能的小型計(jì)算機(jī)程序。
插件可以使用 <object> 標(biāo)簽 或者 <embed> 標(biāo)簽添加在頁(yè)面上.
這些標(biāo)簽定義資源(通常非 HTML 資源)的容器,根據(jù)類(lèi)型,它們即會(huì)由瀏覽器顯示,也會(huì)由外部插件顯示。
使用 <embed> 元素
<embed>標(biāo)簽定義外部(非 HTML)內(nèi)容的容器。(這是一個(gè) HTML5 標(biāo)簽,在 HTML4 中是非法的,但是所有瀏覽器中都有效)。
下面的代碼片段能夠顯示嵌入網(wǎng)頁(yè)中的 MP3 文件:
實(shí)例
<embed height="50" width="100" src="horse.mp3">
問(wèn)題:
<embed> 標(biāo)簽在 HTML 4 中是無(wú)效的。頁(yè)面無(wú)法通過(guò) HTML 4 驗(yàn)證。
不同的瀏覽器對(duì)音頻格式的支持也不同。
如果瀏覽器不支持該文件格式,沒(méi)有插件的話(huà)就無(wú)法播放該音頻。
如果用戶(hù)的計(jì)算機(jī)未安裝插件,無(wú)法播放音頻。
如果把該文件轉(zhuǎn)換為其他格式,仍然無(wú)法在所有瀏覽器中播放。
使用 <object> 元素
<object tag> 標(biāo)簽也可以定義外部(非 HTML)內(nèi)容的容器。
下面的代碼片段能夠顯示嵌入網(wǎng)頁(yè)中的 MP3 文件:
實(shí)例
<object height="50" width="100" data="horse.mp3"></object>
問(wèn)題:
不同的瀏覽器對(duì)音頻格式的支持也不同。
如果瀏覽器不支持該文件格式,沒(méi)有插件的話(huà)就無(wú)法播放該音頻。
如果用戶(hù)的計(jì)算機(jī)未安裝插件,無(wú)法播放音頻。
如果把該文件轉(zhuǎn)換為其他格式,仍然無(wú)法在所有瀏覽器中播放。
使用 HTML5 <audio> 元素
HTML5 <audio> 元素是一個(gè) HTML5 元素,在 HTML 4 中是非法的,但在所有瀏覽器中都有效。
The <audio> element works in all modern browsers.
以下我們將使用 <audio> 標(biāo)簽來(lái)描述 MP3 文件(Internet Explorer、Chrome 以及 Safari 中是有效的), 同樣添加了一個(gè) OGG 類(lèi)型文件(Firefox 和 Opera瀏覽器中有效).如果失敗,它會(huì)顯示一個(gè)錯(cuò)誤文本信息:
實(shí)例
<audio controls>
<source src="horse.mp3" type="audio/mpeg">
<source src="horse.ogg" type="audio/ogg">
Your browser does not support this audio format.
</audio>
問(wèn)題:
<audio> 標(biāo)簽在 HTML 4 中是無(wú)效的。您的頁(yè)面無(wú)法通過(guò) HTML 4 驗(yàn)證。
您必須把音頻文件轉(zhuǎn)換為不同的格式。
<audio> 元素在老式瀏覽器中不起作用。
最好的 HTML 解決方法
下面的例子使用了兩個(gè)不同的音頻格式。HTML5 <audio> 元素會(huì)嘗試以 mp3 或 ogg 來(lái)播放音頻。如果失敗,代碼將回退嘗試 <embed> 元素。
實(shí)例
<audio controls height="100" width="100">
<source src="horse.mp3" type="audio/mpeg">
<source src="horse.ogg" type="audio/ogg">
<embed height="50" width="100" src="horse.mp3">
</audio>
問(wèn)題:
您必須把音頻轉(zhuǎn)換為不同的格式。
<embed> 元素?zé)o法回退來(lái)顯示錯(cuò)誤消息。
雅虎媒體播放器 - 一個(gè)簡(jiǎn)單的添加音頻到你網(wǎng)站上的方式
使用雅虎播放器是免費(fèi)的。如需使用它,您需要把這段 JavaScript 插入網(wǎng)頁(yè)底部:
雅虎播放器可以播放MP3以及其他各種格式。你只需添加一行代碼到你的頁(yè)面或 博客中就可以輕松地將您的HTML頁(yè)面制作成 專(zhuān)業(yè)的播放列表:
實(shí)例
<a href="horse.mp3">Play Sound</a>
<script src="http://mediaplayer.yahoo.com/latest"></script>
如果你要使用它,您需要把這段 JavaScript 插入網(wǎng)頁(yè)底部:
<script src="http://mediaplayer.yahoo.com/latest"></script>
然后只需簡(jiǎn)單地把 MP3 文件鏈接到您的 HTML 中,JavaScript 會(huì)自動(dòng)地為每首歌創(chuàng)建播放按鈕:
<a href="song1.mp3">Play Song 1</a>
<a href="song2.wav">Play Song 2</a>
...
...
雅虎媒體播放器為您的用戶(hù)提供的是一個(gè)小型的播放按鈕,而不是完整的播放器。不過(guò),當(dāng)您點(diǎn)擊該按鈕,會(huì)彈出完整的播放器。
請(qǐng)注意,這個(gè)播放器始終停靠在窗框底部。只需點(diǎn)擊它,就可將其滑出。
使用超鏈接
如果網(wǎng)頁(yè)包含指向媒體文件的超鏈接,大多數(shù)瀏覽器會(huì)使用"輔助應(yīng)用程序"來(lái)播放文件。
以下代碼片段顯示指向 mp3 文件的鏈接。如果用戶(hù)點(diǎn)擊該鏈接,瀏覽器會(huì)啟動(dòng)"輔助應(yīng)用程序"來(lái)播放該文件:
實(shí)例
<a href="horse.mp3">Play the sound</a>
內(nèi)聯(lián)的聲音說(shuō)明
當(dāng)您在網(wǎng)頁(yè)中包含聲音,或者作為網(wǎng)頁(yè)的組成部分時(shí),它被稱(chēng)為內(nèi)聯(lián)聲音。
如果您打算在 web 應(yīng)用程序中使用內(nèi)聯(lián)聲音,您需要意識(shí)到很多人都覺(jué)得內(nèi)聯(lián)聲音令人惱火。同時(shí)請(qǐng)注意,用戶(hù)可能已經(jīng)關(guān)閉了瀏覽器中的內(nèi)聯(lián)聲音選項(xiàng)。
我們最好的建議是只在用戶(hù)希望聽(tīng)到內(nèi)聯(lián)聲音的地方包含它們。一個(gè)正面的例子是,在用戶(hù)需要聽(tīng)到錄音并點(diǎn)擊某個(gè)鏈接時(shí),會(huì)打開(kāi)頁(yè)面然后播放錄音。
HTML 多媒體標(biāo)簽
New : HTML5 新標(biāo)簽
標(biāo)簽 | 描述 |
---|---|
<embed> | 定義內(nèi)嵌對(duì)象。HTML4 中不贊成,HTML5 中允許。 |
<object> | 定義內(nèi)嵌對(duì)象。 |
<param> | 定義對(duì)象的參數(shù)。 |
<audio>New | 定義了聲音內(nèi)容 |
<video>New | 定義一個(gè)視頻或者影片 |
<source>New | 定義了media元素的多媒體資源(<video> 和 <audio>) |
<track>New | 規(guī)定media元素的字幕文件或其他包含文本的文件 (<video> 和<audio>) |
如您還有不明白的可以在下面與我留言或是與我探討QQ群308855039,我們一起飛!
*請(qǐng)認(rèn)真填寫(xiě)需求信息,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。