我想在一段时间后自动淡化div onclick和fadeout div(I want to fadein a div onclick and fadeout div after a certain t

系统教程 行业动态 更新时间:2024-06-14 16:57:39
我想在一段时间后自动淡化div onclick和fadeout div(I want to fadein a div onclick and fadeout div after a certain time automatically)

其实我的问题是,我想在click事件上fadein div ,并在一段时间后自动fadeout该div 。

我做了一些事情,但fadeout功能不起作用。 这是我的片段:

.alert-box {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  display: none;
  padding: 20px 0;
  background-color: red;
  color: #fff;
}

.close {
  position: absolute;
  right: 10px;
  top: 10px;
  cursor: pointer;
} 
  
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>


<button>click me</button>


<div class="alert-box">
  <span class="close">&times;</span>
  <div class="content">
    sample content
  </div>
</div>


<script type="text/javascript">
  $(document).ready(function() {
    $('button').click(function() {
      $('.alert-box').fadeIn('fast');
    });
    if ($('.alert-box').css('display') == 'block') {
      $('.alert-box').delay(1000).fadeOut('fast');
    }
  });
</script> 
  
 

Actually my problem is, I want to fadein a div on click event, and fadeout that div after a certain time automatically.

I have made some thing, but the fadeout function is not working. Here is my snippet:

.alert-box {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  display: none;
  padding: 20px 0;
  background-color: red;
  color: #fff;
}

.close {
  position: absolute;
  right: 10px;
  top: 10px;
  cursor: pointer;
} 
  
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>


<button>click me</button>


<div class="alert-box">
  <span class="close">&times;</span>
  <div class="content">
    sample content
  </div>
</div>


<script type="text/javascript">
  $(document).ready(function() {
    $('button').click(function() {
      $('.alert-box').fadeIn('fast');
    });
    if ($('.alert-box').css('display') == 'block') {
      $('.alert-box').delay(1000).fadeOut('fast');
    }
  });
</script> 
  
 

最满意答案

1秒后使用setTimeout进行淡出

setTimeout (() => { $('.alert-box').fadeOut('fast'); }, 1000)

删除了不必要的代码。

.alert-box {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  display: none;
  padding: 20px 0;
  background-color: red;
  color: #fff;
}

.close {
  position: absolute;
  right: 10px;
  top: 10px;
  cursor: pointer;
} 
  
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button>click me</button>


<div class="alert-box">
  <span class="close">&times;</span>
  <div class="content">
    sample content
  </div>
</div>


<script type="text/javascript">
  $(document).ready(function() {
    $('button').click(function() {
      $('.alert-box').fadeIn('fast');
      setTimeout(() => {
        if ($('.alert-box').css('display') == 'block') {
          $('.alert-box').delay(1000).fadeOut('fast');
        }
      }, 1000);
    });

  });
</script> 
  
 

Use setTimeout for fadeout after 1 second

setTimeout (() => { $('.alert-box').fadeOut('fast'); }, 1000)

Removed the unnecesary code too.

.alert-box {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  display: none;
  padding: 20px 0;
  background-color: red;
  color: #fff;
}

.close {
  position: absolute;
  right: 10px;
  top: 10px;
  cursor: pointer;
} 
  
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button>click me</button>


<div class="alert-box">
  <span class="close">&times;</span>
  <div class="content">
    sample content
  </div>
</div>


<script type="text/javascript">
  $(document).ready(function() {
    $('button').click(function() {
      $('.alert-box').fadeIn('fast');
      setTimeout(() => {
        if ($('.alert-box').css('display') == 'block') {
          $('.alert-box').delay(1000).fadeOut('fast');
        }
      }, 1000);
    });

  });
</script> 
  
 

更多推荐

本文发布于:2023-04-13 12:06:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/dzcp/3e16936807bf1b93683266cee930aa7b.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:我想   onclick   div   fadeout   time

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!