【问题标题】:change transition ms for first span更改第一个跨度的转换 ms
【发布时间】:2022-11-28 18:51:06
【问题描述】:

如何让幻灯片中的第一个文本在 300 毫秒后显示?

所有人的过渡时间都是 4 秒,但我只想在 300 毫秒后显示第一个文本,之后其他所有内容都可以过渡 4 秒

我不想等 4 秒直到幻灯片放映开始

setInterval 函数用于整个幻灯片

setInterval(function(){
  $('.blurtext span.past').removeClass('past');
  $('.blurtext span.active').addClass('past').removeClass('active');
  $('.blurtext span.past + span').addClass('active');
  if ($('.blurtext span.active').length == 0){
    $('.blurtext span:nth-child(1)').addClass('active');
  }
}, 4000);
.blurtext {
  position: relative;
  width: 100vw;
  text-align: center;
  font-size: 10vw;
  height: 10vw;
  text-transform: uppercase;
  font-family: "Oswald", sans-serif;
  font-weight: 600;
  color: #471C1A;
}
.blurtext span {
  position: absolute;
  display: block;
  width: 100%;
  text-align: center;
  opacity: 0;
  transform: perspective(100px) translateZ(10px);
  filter: blur(10px);
  letter-spacing: 0.1em;
}
.blurtext span.active {
  opacity: 1;
  transform: perspective(100px) translateZ(0px);
  filter: blur(0px);
  letter-spacing: 0.15em;
  transition: opacity 2000ms linear, transform 2000ms linear, filter 2000ms linear, letter-spacing 2000ms linear;
}
.blurtext span.past {
  opacity: 0;
  transform: perspective(100px) translateZ(-10px);
  filter: blur(10px);
  letter-spacing: 0.2em;
  transition: opacity 2000ms linear, transform 2000ms linear, filter 2000ms linear, letter-spacing 2000ms linear;
}

.center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
}
<!DOCTYPE html>
<html lang="en" >
<head>
  <meta charset="UTF-8">
  <title>CodePen - Blur Text Transition</title>
  <meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://fonts.googleapis.com/css?family=Oswald" rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css">
<link rel="stylesheet" href="./style.css">

</head>
<body>
<!-- partial:index.partial.html -->
<div class="center">
  <div class="blurtext">
    <span>This </span>
    <span>is</span>
    <span>your</span>
    <span>chance</span>
  </div>
</div>
<!-- partial -->
  <script src='https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js'></script><script  src="./script.js"></script>

</body>
</html>

【问题讨论】:

    标签: javascript jquery


    【解决方案1】:

    我认为最初只在一个单独的超时时间调用函数是可行的:

    setTimeout(triggerNextSlide, 1000);
    
    function triggerNextSlide() {
      $('.blurtext span.past').removeClass('past');
      $('.blurtext span.active').addClass('past').removeClass('active');
      $('.blurtext span.past + span').addClass('active');
      if ($('.blurtext span.active').length == 0){
        $('.blurtext span:nth-child(1)').addClass('active');
      }
    }
    
    setInterval(triggerNextSlide, 4000);
    .blurtext {
      position: relative;
      width: 100vw;
      text-align: center;
      font-size: 10vw;
      height: 10vw;
      text-transform: uppercase;
      font-family: "Oswald", sans-serif;
      font-weight: 600;
      color: #471C1A;
    }
    .blurtext span {
      position: absolute;
      display: block;
      width: 100%;
      text-align: center;
      opacity: 0;
      transform: perspective(100px) translateZ(10px);
      filter: blur(10px);
      letter-spacing: 0.1em;
    }
    .blurtext span.active {
      opacity: 1;
      transform: perspective(100px) translateZ(0px);
      filter: blur(0px);
      letter-spacing: 0.15em;
      transition: opacity 2000ms linear, transform 2000ms linear, filter 2000ms linear, letter-spacing 2000ms linear;
    }
    .blurtext span.past {
      opacity: 0;
      transform: perspective(100px) translateZ(-10px);
      filter: blur(10px);
      letter-spacing: 0.2em;
      transition: opacity 2000ms linear, transform 2000ms linear, filter 2000ms linear, letter-spacing 2000ms linear;
    }
    
    .center {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate3d(-50%, -50%, 0);
    }
    <!DOCTYPE html>
    <html lang="en" >
    <head>
      <meta charset="UTF-8">
      <title>CodePen - Blur Text Transition</title>
      <meta name="viewport" content="width=device-width, initial-scale=1">
    <link href="https://fonts.googleapis.com/css?family=Oswald" rel="stylesheet">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css">
    <link rel="stylesheet" href="./style.css">
    
    </head>
    <body>
    <!-- partial:index.partial.html -->
    <div class="center">
      <div class="blurtext">
        <span>This </span>
        <span>is</span>
        <span>your</span>
        <span>chance</span>
      </div>
    </div>
    <!-- partial -->
      <script src='https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js'></script><script  src="./script.js"></script>
    
    </body>
    </html>

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多