Javascript 逐字显示句子。只显示一句话

Javascript 逐字显示句子。只显示一句话,javascript,jquery,html,animation,Javascript,Jquery,Html,Animation,我有以下代码: var P=$('.statemens>P'); P.hide().contents().each(函数()){ 变异词; if(this.nodeType==3){ Words=''+this.data.split(/\s+/).join('')+''; $(本)。替换为(文字); }else if(this.nodeType==1){ this.innerHTML=''+this.innerHTML.split(/\s+/).join('')+''; } }); P.fin

我有以下代码:

var P=$('.statemens>P');
P.hide().contents().each(函数()){
变异词;
if(this.nodeType==3){
Words=''+this.data.split(/\s+/).join('')+'';
$(本)。替换为(文字);
}else if(this.nodeType==1){
this.innerHTML=''+this.innerHTML.split(/\s+/).join('')+'';
}
});
P.find('span').hide().each(函数(){
if(!$.trim(this.innerHTML)){
$(this.remove();
}
});
P.show().find('span')。每个(函数(I){
美元(此).delay(200*I).fadeIn(800);
});

这只是一个简单的段落#1

这只是一个简单的段落#2

这只是一个简单的段落#3

这只是一个简单的段落#4

这只是一个简单的段落#5


您只需迭代所有
p
,并包含一个
setTimeout
来显示它。您需要为setTimeout计算的延迟如下所述

在显示当前p的内部,隐藏其同级,并开始设置其所具有的
跨度的动画

var delay = 0;
// Iterate over all the P's
P.each(function(){
  // You need an IIFE to pass correct 'this'
  (function(that){
    // Add a setTimeout to hide/show P's
    setTimeout(function(){
      // Show current P and hide all of its siblings
      $(that).show().siblings().hide();
      // This is what you already had
      $(that).find('span').each(function(I) {
          $(this).delay(200 * I).fadeIn(800);
      });
    }, delay);
  })(this);
  // Delay is past delay + time to fade in all the spans + 1 sec break
  delay = delay+($(this).find('span').length+1)*200+1000;
});
var P=$('.statemens>P');
P.hide().contents().each(函数()){
变异词;
if(this.nodeType==3){
Words=''+this.data.split(/\s+/).join('')+'';
$(本)。替换为(文字);
}else if(this.nodeType==1){
this.innerHTML=''+this.innerHTML.split(/\s+/).join('')+'';
}
});
P.find('span').hide().each(函数(){
if(!$.trim(this.innerHTML)){
$(this.remove();
}
});
var延迟=0;
//迭代所有的P
P.each(函数(){
//你需要一个生命来通过正确的“这”
(功能){
//添加setTimeout以隐藏/显示P
setTimeout(函数(){
//显示当前P并隐藏其所有同级
$(that.show().sides().hide();
//这就是你已经拥有的
$(that.find('span')。每个(函数(I){
美元(此).delay(200*I).fadeIn(800);
});
},延误);
})(本条);
//延迟超过延迟+在所有跨度中衰减的时间+1秒中断
延迟=延迟+($(this).find('span')。长度+1)*200+1000;
});

这只是一个简单的段落#1

这只是一个简单的段落#2

这只是一个简单的段落#3

这只是一个简单的段落#4

这只是一个简单的段落#5


您只需迭代所有
p
,并包含一个
setTimeout
来显示它。您需要为setTimeout计算的延迟如下所述

在显示当前p的内部,隐藏其同级,并开始设置其所具有的
跨度的动画

var delay = 0;
// Iterate over all the P's
P.each(function(){
  // You need an IIFE to pass correct 'this'
  (function(that){
    // Add a setTimeout to hide/show P's
    setTimeout(function(){
      // Show current P and hide all of its siblings
      $(that).show().siblings().hide();
      // This is what you already had
      $(that).find('span').each(function(I) {
          $(this).delay(200 * I).fadeIn(800);
      });
    }, delay);
  })(this);
  // Delay is past delay + time to fade in all the spans + 1 sec break
  delay = delay+($(this).find('span').length+1)*200+1000;
});
var P=$('.statemens>P');
P.hide().contents().each(函数()){
变异词;
if(this.nodeType==3){
Words=''+this.data.split(/\s+/).join('')+'';
$(本)。替换为(文字);
}else if(this.nodeType==1){
this.innerHTML=''+this.innerHTML.split(/\s+/).join('')+'';
}
});
P.find('span').hide().each(函数(){
if(!$.trim(this.innerHTML)){
$(this.remove();
}
});
var延迟=0;
//迭代所有的P
P.each(函数(){
//你需要一个生命来通过正确的“这”
(功能){
//添加setTimeout以隐藏/显示P
setTimeout(函数(){
//显示当前P并隐藏其所有同级
$(that.show().sides().hide();
//这就是你已经拥有的
$(that.find('span')。每个(函数(I){
美元(此).delay(200*I).fadeIn(800);
});
},延误);
})(本条);
//延迟超过延迟+在所有跨度中衰减的时间+1秒中断
延迟=延迟+($(this).find('span')。长度+1)*200+1000;
});

这只是一个简单的段落#1

这只是一个简单的段落#2

这只是一个简单的段落#3

这只是一个简单的段落#4

这只是一个简单的段落#5


没有人愿意为您编写代码。试着先自己写。如果您遇到问题,请使用调试器帮助您查找问题。如果你自己做了一番真正的努力后仍然无法摆脱困境,那么请回来寻求帮助。从你的代码中,你所缺少的只是一种方法,可以在每个
p
之间延迟一秒,隐藏之前的p,如果它们是可见的,我已经厌倦了编写代码来计算段落和打断字数,但是它不起作用,没有人愿意为你写代码。试着先自己写。如果您遇到问题,请使用调试器帮助您查找问题。如果你自己做了一番真正的努力后仍然无法摆脱困境,那么请回来寻求帮助。从你的代码中,你所缺少的只是一种方法,可以在每个
p
之间延迟一秒,隐藏之前的p,如果它们是可见的,我已经厌倦了编写代码来计算段落和打断字数,但它不起作用。