Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将计时器设置为slidedown,并在slideup后更改按钮_Javascript_Jquery - Fatal编程技术网

Javascript 将计时器设置为slidedown,并在slideup后更改按钮

Javascript 将计时器设置为slidedown,并在slideup后更改按钮,javascript,jquery,Javascript,Jquery,在我浏览完网站后,3秒钟后,广告会从网页顶部滑下,该div上的按钮名称将变为“隐藏”,我应该怎么写。在我们点击隐藏按钮后,广告会向上滑动,按钮名称会再次回到“显示” 它可以向下滑动和向上滑动,并且按钮隐藏和显示更改成功。但在按钮再次变回“显示”后。我点击了“显示”按钮,但它不会变回“隐藏”。而且我也没有把计时器设置为向下滑动。因为我不知道该说什么,因为我找不到其他问题的答案 这是我的JavaScript和jQuery脚本 $(document).ready(function () { $

在我浏览完网站后,3秒钟后,广告会从网页顶部滑下,该div上的按钮名称将变为“隐藏”,我应该怎么写。在我们点击隐藏按钮后,广告会向上滑动,按钮名称会再次回到“显示”

它可以向下滑动和向上滑动,并且按钮隐藏和显示更改成功。但在按钮再次变回“显示”后。我点击了“显示”按钮,但它不会变回“隐藏”。而且我也没有把计时器设置为向下滑动。因为我不知道该说什么,因为我找不到其他问题的答案

这是我的JavaScript和jQuery脚本

$(document).ready(function () {
    $(".showAds").click(function () {
    $("#ads").slideToggle("slow");
    $('a#showLink').text('SHOW');
     });
});
这就是我想展示和隐藏的东西

<div id="top">
    <div id="adsBox">
         <div id="ads"> <img src="assets/images/ads.jpg" alt="ads"> </div>
         <p> <a href="#" id="showLink" class="showAds">HIDE</a> </p>
    </div>
</div>
我也试过这样的方法。但它仍然不起作用

$(".showAds").click(function () {
    $("#ads").slideUp("slow");
    $('a#showLink').text('SHOW');
    $("#ads").slideDown("slow");
    $('a#showLink').text('HIDE');
});

我知道我的代码很乱。请把我引向正确的方向。对不起,我的英语不好。谢谢。

按钮标签不会更改回去,因为简而言之,您没有告诉它。调用
slideToggle()

试着这样做:

$(".showAds").click(function () {
   $("#ads").slideToggle("slow");
   $('a#showLink').text(text == "SHOW" ? "HIDE" : "SHOW");
});
也就是说-'如果文本显示,则将其设置为隐藏。如果不是,则将其设置为“显示”

对于计时器,请使用
setTimeout()


我试过你的代码,但按钮根本不起作用。因为我想让按钮从隐藏变为显示,滑动后,按钮标签会再次更改。设置超时真的很有效。但不适用于按钮标签。我完全理解你的意思,但它仍然不起作用。你想让它在滑块向下时显示“隐藏”,在滑块向上时显示“显示”,对吗?如果是这样,请将初始名称(HTML中的名称)更改为SHOW,以匹配滑块的初始状态。还是我误解了你的意图?是的,你是对的。这就是我的意思。我把最初的名字改为“SHOW”。但它仍然不起作用。我还缺什么吗?这可能是jquery.js的问题吗?()它在这里用于文本更改。
$(".showAds").click(function () {
   $("#ads").slideToggle("slow");
   $('a#showLink').text(text == "SHOW" ? "HIDE" : "SHOW");
});
setTimeout(function(){ $("ads").slideToggle("slow");}, 3000);