源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

利用jQuery实现打字机字幕效果实例代码

  • 时间:2020-04-12 16:06 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:利用jQuery实现打字机字幕效果实例代码
[b]实现效果:[/b] [img]http://files.jb51.net/file_images/article/201609/201692144122379.png?201682144146[/img] [img]http://files.jb51.net/file_images/article/201609/201692144202928.png?201682144212[/img] [b]实现原理:[/b] 把html里的代码读进来, 然后跳过“<”和“>”之间的代码, 顺便保存了内容的格式, 然后一个定时器,逐个输出。 [b]用到的基础知识:[/b] jQuery为开发插件提拱了两个方法,分别是:     [code] jQuery.fn.extend(object);[/code]     [code]jQuery.extend(object);[/code] [code]jQuery.extend(object); [/code]为扩展jQuery类本身.为类添加新的方法。 [code]jQuery.fn.extend(object);[/code]给jQuery对象添加方法。 [code]$.fn[/code]是指jquery的命名空间,加上fn上的方法及属性,会对jquery实例每一个有效。  如扩展[code]$.fn.abc() [/code] 那么你可以这样子:[code]$("#div").abc(); [/code] [code]$.fx[/code]是指jquery的特效。  如使用显示、滑动、淡入淡出、动画等。  [code]$.fx.off[/code]可以关闭动画,其实是直接显示结果。 [b]实现代码:[/b]
<!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>一场雨把我困在这里</p>
 <br/>
 <p>你温柔的表情</p>
 <p>会让我伤心</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();//返回被选 元素的内容
  
  var index = 0;
  var x = $text.html('');
  //$text.html()和$(this).html('')有区别
  
  var timer = setInterval(function(){
   //substr(index, 1) 方法在字符串中抽取从index下标开始的一个的字符
   var current = str.substr(index, 1);
   
   if(current == '<'){
   //indexOf() 方法返回">"在字符串中首次出现的位置。
    index = str.indexOf('>', index) + 1;
   }else{
    index ++ ;
   }
   
   //console.log(["0到index下标下的字符",str.substring(0, index)],["符号",index & 1 ? '_': '']);
   //substring() 方法用于提取字符串中介于两个指定下标之间的字符
   $text.html(str.substring(0, index) + (index & 1 ? '_': ''));
   if(index >= str.length){
    clearInterval(timer);
   }
  },100);
 };
 
 $("#autotype").autotype();
</script>
</body>
</html>
[b]拓展[/b] 再简单介绍下jQuery的[code]$.extend[/code]: [code]$.extend[/code] 扩展jQuery对象本身。 用来在jQuery命名空间上增加新函数。 如下:在jQuery命名空间上增加两个函数。
<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>
[b]总结[/b] 大家可以自己操作看下效果,这样更容易理解学习,以上就是这篇文章的全部内容,希望对大家的学习和工作能有所帮助,如果有疑问可以留言交流。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部