利用jQuery實(shí)現(xiàn)打字機(jī)字幕效果實(shí)例代碼
實(shí)現(xiàn)效果:
實(shí)現(xiàn)原理:
把html里的代碼讀進(jìn)來,
然后跳過“<”和“>”之間的代碼,
順便保存了內(nèi)容的格式,
然后一個(gè)定時(shí)器,逐個(gè)輸出。
用到的基礎(chǔ)知識(shí):
jQuery為開發(fā)插件提拱了兩個(gè)方法,分別是:
jQuery.fn.extend(object);
jQuery.extend(object);
jQuery.extend(object);
為擴(kuò)展jQuery類本身.為類添加新的方法。
jQuery.fn.extend(object);
給jQuery對(duì)象添加方法。
$.fn
是指jquery的命名空間,加上fn上的方法及屬性,會(huì)對(duì)jquery實(shí)例每一個(gè)有效。
如擴(kuò)展$.fn.abc()
那么你可以這樣子:$("#div").abc();
$.fx
是指jquery的特效。
如使用顯示、滑動(dòng)、淡入淡出、動(dòng)畫等。
$.fx.off
可以關(guān)閉動(dòng)畫,其實(shí)是直接顯示結(jié)果。
實(shí)現(xiàn)代碼:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <meta name="renderer" content="webkit"> <meta http-equiv="X-UA-Compatible" content="IE=Edge"> <meta name="keyword" content=""> <meta name="description" content=""> </head> <body> <div class="autotype" id="autotype"> <p>一場(chǎng)雨把我困在這里</p> <br/> <p>你溫柔的表情</p> <p>會(huì)讓我傷心</p> <br/> <p>六月的雨,只是無情的你~</p> </div> <script src="http://file2.ci123.com/ast/js/jquery_172.js"></script> <script> $.fn.autotype = function(){ var $text = $(this); console.log('this',this); var str = $text.html();//返回被選 元素的內(nèi)容 var index = 0; var x = $text.html(''); //$text.html()和$(this).html('')有區(qū)別 var timer = setInterval(function(){ //substr(index, 1) 方法在字符串中抽取從index下標(biāo)開始的一個(gè)的字符 var current = str.substr(index, 1); if(current == '<'){ //indexOf() 方法返回">"在字符串中首次出現(xiàn)的位置。 index = str.indexOf('>', index) + 1; }else{ index ++ ; } //console.log(["0到index下標(biāo)下的字符",str.substring(0, index)],["符號(hào)",index & 1 ? '_': '']); //substring() 方法用于提取字符串中介于兩個(gè)指定下標(biāo)之間的字符 $text.html(str.substring(0, index) + (index & 1 ? '_': '')); if(index >= str.length){ clearInterval(timer); } },100); }; $("#autotype").autotype(); </script> </body> </html>
拓展
再簡(jiǎn)單介紹下jQuery的$.extend
:
$.extend
擴(kuò)展jQuery對(duì)象本身。
用來在jQuery命名空間上增加新函數(shù)。
如下:在jQuery命名空間上增加兩個(gè)函數(shù)。
<html> <head> <meta charset="utf-8"> </head> <body> <script src="http://file2.ci123.com/ast/js/jquery_172.js"></script> <script> jQuery.extend({ min:function(a, b){return a < b ? a : b;}, max:function(a, b){return a < b ? a : b} }); alert("min" + "——" + jQuery.min(1, 2)); alert("max" + "——" + jQuery.max(6, 8)); </script> </body> </html>
總結(jié)
大家可以自己操作看下效果,這樣更容易理解學(xué)習(xí),以上就是這篇文章的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)和工作能有所幫助,如果有疑問可以留言交流。
相關(guān)文章
cnblogs中在閃存中屏蔽某人的實(shí)現(xiàn)代碼
cnblogs園子還沒提供這項(xiàng)功能,我們又確實(shí)有這個(gè)需求,只好自己寫一個(gè),需要的朋友可以參考下。2010-11-11用JQuery 實(shí)現(xiàn)AJAX加載XML并解析的腳本
用JQuery 實(shí)現(xiàn)AJAX加載XML并解析的腳本2009-07-07jquery幻燈片插件bxslider樣式改進(jìn)實(shí)例
這篇文章主要介紹了jquery幻燈片插件bxslider樣式改進(jìn),對(duì)比官方樣式以實(shí)例形式講述了改進(jìn)的技巧,非常實(shí)用,需要的朋友可以參考下2014-10-10基于jQuery的AJAX和JSON實(shí)現(xiàn)純html數(shù)據(jù)模板
jQuery內(nèi)置的AJAX功能,直接訪問后臺(tái)獲得JSON格式的數(shù)據(jù),從而實(shí)現(xiàn)純html數(shù)據(jù)模板,下面主要給大家介紹實(shí)現(xiàn)代碼,感興趣的朋友一起看下吧2016-08-08jQuery插件echarts實(shí)現(xiàn)的去掉X軸、Y軸和網(wǎng)格線效果示例【附demo源碼下載】
這篇文章主要介紹了jQuery插件echarts實(shí)現(xiàn)的去掉X軸、Y軸和網(wǎng)格線效果,結(jié)合實(shí)例形式分析了echarts插件繪制表格圖及圖形相關(guān)屬性設(shè)置操作技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2017-03-03jQuery css() 方法動(dòng)態(tài)修改CSS屬性
在jquery中我們要?jiǎng)討B(tài)的修改css屬性我們只要使用css()方法就可以實(shí)現(xiàn)了,下面我來給各位同學(xué)詳細(xì)介紹介紹。2016-09-09jQuery實(shí)現(xiàn)簡(jiǎn)單下拉導(dǎo)航效果
這篇文章主要介紹了jQuery實(shí)現(xiàn)簡(jiǎn)單下拉導(dǎo)航效果,通過簡(jiǎn)單的元素遍歷與樣式替換實(shí)現(xiàn)下拉導(dǎo)航的功能,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-09-09