如何在页面加载后不久触发滑块切换

How do I make slidetoggle fire shortly after page load?

本文关键字:加载      更新时间:2023-09-26

让我先说一下我不懂JS,所以任何帮助将不胜感激。

我有一个幻灯片切换开关,我想在页面加载后 3 秒打开它。 这是我目前对滑动切换的:

$(function(){
  // hide/show header
  $('#close-open-top a').bind('click', function() {
    if($('header:visible').length) {
      $('img', this).attr('src', 'img/open.png');
    } else {
      $('img', this).attr('src', 'img/close.png');
    }
    $('header').slideToggle('slow');
    return false;
  });

目前它加载已关闭,当我单击箭头时,它会打开。 我希望它在页面加载后 3 秒自动打开。

准备好在

文档中尝试以下操作:

$('header').delay(3000).slideToggle('slow');

.delay() 方法延迟动画队列中的后续项(请注意,不能使用它来延迟非动画方法(。

或者,如果您希望执行单击处理程序中的所有代码(包括设置图像 src(,那么最简单的方法是在 3 秒延迟后以编程方式触发单击,因此请将以下内容添加到文档就绪处理程序的末尾(在绑定单击处理程序之后(:

setTimeout(function() { $('#close-open-top a').trigger('click'); }, 3000);

好吧,我想我没有完全得到你..但也许我可以帮你

要获得延迟,请使用 setTimeout,如下所示:

setTimeout(function(){ $('header').slideToggle('slow');
},3000);

因此,在函数内部,您可以放置要执行的代码。第二个参数必须选择为在调用函数之前要等待的毫秒数。如果您想在页面加载后 3 秒自动执行此操作,请使用以下命令:

$(document).ready(function(){
    setTimeout(function(){ $('header').slideToggle('slow');
    },3000);  
});