有谁知道如何使图像出现然后消失?

时间:2014-01-22 19:38:59

标签: javascript html css

我想将图像的外观延迟约5分钟,然后一旦出现,我希望它在10秒后消失。

我已经能够使用代码延迟图像的出现

<script type="text/javascript">
    function showBuyLink() {
      document.getElementById("buylink").style.visibility = "visible";
    }
    // adjust this as needed, 1 sec = 1000
    setTimeout("showBuyLink()", 300000); 
</script>

但后来我无法让它消失。

4 个答案:

答案 0 :(得分:1)

这个可能会对你有所帮助

   function showBuyLink() { 
      document.getElementById("buylink").style.display = "block"; 
      setTimeout(function (){
          document.getElementById("buylink").style.display = "none";
      }, 10000);    
  } 
  // adjust this as needed, 1 sec = 1000 
  setTimeout(showBuyLink(), 300000); 

答案 1 :(得分:0)

只需在show函数中设置另一个指向隐藏功能的计时器:

<script type="text/javascript">
    function showBuyLink() {
        document.getElementById("buylink").style.visibility = "visible"; 
        setTimeout("hideBuyLink()", 10000); 
    } 
    function hideBuyLink() {
        document.getElementById("buylink").style.visibility = "hidden"; 
    } 
    // adjust this as needed, 1 sec = 1000 
    setTimeout("showBuyLink()", 300000); 
</script>

另外,如果你想在一个函数中使用它:

<script type="text/javascript">
    function showBuyLink(){
        var buyLink = document.getElementById("buylink");
        if(buyLink.style.visibility == "hidden"){
            buyLink.style.visibility = "visible";
            setTimeout("showBuyLink()", 10000); 
        }else{
            buyLink.style.visibility = "hidden"; 
        }
    }
    // adjust this as needed, 1 sec = 1000 
    setTimeout("showBuyLink()", 300000); 
</script>

答案 2 :(得分:0)

答案实际上在您自己的代码中:setTimeout(…)用于在一段时间后调用函数,因此您可以创建第二个函数(即“hideBuyLink”)并将另一个调用setTimeout放入{{ 1}}。

然而,看起来您似乎试图将JavaScript放到一个可以购买东西的真实网站上。我建议你联系某人来帮助你编写代码,因为这是一个初学者的问题,我担心你可能会犯错,最终可能会被恶意攻击者利用。

答案 3 :(得分:0)

另一种方法。

setTimeout(function() {
    document.getElementById("buylink").style.visibility = "visible"; 
    setTimeout(function() {
        document.getElementById("buylink").style.visibility = "hidden"; 
    }, 10000);
},300000);