利用jQuery實(shí)現(xiàn)打字機(jī)字幕效果實(shí)例代碼
實(shí)現(xiàn)效果:


實(shí)現(xiàn)原理:
把html里的代碼讀進(jìn)來(lái),
然后跳過(guò)“<”和“>”之間的代碼,
順便保存了內(nèi)容的格式,
然后一個(gè)定時(shí)器,逐個(gè)輸出。
用到的基礎(chǔ)知識(shí):
jQuery為開(kāi)發(fā)插件提拱了兩個(gè)方法,分別是:
jQuery.fn.extend(object);
jQuery.extend(object);
jQuery.extend(object); 為擴(kuò)展jQuery類(lèi)本身.為類(lèi)添加新的方法。
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)畫(huà)等。
$.fx.off可以關(guān)閉動(dòng)畫(huà),其實(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>六月的雨,只是無(wú)情的你~</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)開(kāi)始的一個(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ì)象本身。
用來(lái)在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í)和工作能有所幫助,如果有疑問(wèn)可以留言交流。
相關(guān)文章
jquery easyui 結(jié)合jsp簡(jiǎn)單展現(xiàn)table數(shù)據(jù)示例
這篇文章主要介紹了jquery easyui 結(jié)合jsp簡(jiǎn)單展現(xiàn)table數(shù)據(jù),需要的朋友可以參考下2014-04-04
jquery實(shí)現(xiàn)圖片上傳前本地預(yù)覽
這篇文章主要為大家詳細(xì)介紹了jquery實(shí)現(xiàn)圖片上傳前本地預(yù)覽功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-04-04
jquery 學(xué)習(xí)筆記 傳智博客佟老師附詳細(xì)注釋
本人水平有限,在學(xué)習(xí)時(shí)請(qǐng)用批判的態(tài)度學(xué)習(xí),有問(wèn)題給我留言 傳智博客佟老師 jqurey 學(xué)習(xí)筆記,以及例子代碼詳細(xì)注釋。2009-07-07
jQuery左右滾動(dòng)支持圖片放大縮略圖圖片輪播代碼分享
這篇文章主要介紹了jQuery左右滾動(dòng)支持圖片放大縮略圖圖片輪播效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2015-08-08

