【问题标题】:Javascript timerJavascript 计时器
【发布时间】:2010-09-27 10:49:48
【问题描述】:

我有一组对象,每个对象都跟踪一些字符串。 这些对象在页面加载时创建并存储在对象数组中。 我在 ascx 文件中有四个用户控件,它们一次显示特定对象的这些字符串。

而且我在同一个 ascx 文件中有一个播放按钮,默认设置为播放。 当我加载 ascx 时,它会显示特定对象中的第一组字符串。 并且在 5 秒时间间隔后,iy 应该在下一个对象中显示第二组字符串。当按下播放按钮时,它也应该进入暂停状态。

谁能给我一个开始来实现这个要求。我的文件后面的代码是 C#

【问题讨论】:

    标签: c# javascript asp.net asp.net-ajax


    【解决方案1】:

    从根本上说,您需要 ASCX 控件的“幻灯片放映”。一种常见的方法是让所有的 ASCX 都可见,然后使用 Javascript 和 CSS 一次使一个可见。

    Google for 'html css javascript slideshow'。

    http://www.catswhocode.com/blog/top-10-javascript-slideshows-carousels-and-sliders

    【讨论】:

    • 非常感谢朋友,我已经浏览了这些滑块并选择了滑翔机,它通过一些自定义为我完成了这项工作。
    【解决方案2】:

    刚刚意识到您可能希望根据您的问题标题通过前端 JavaScript 来实现这一点?在这种情况下,您将需要 setInterval 函数以及 DOM 中可用的数据数组。

    假设你的按钮是

    <asp:ImageButton src="source.jpg" class="btnPlay" alt="Play" />
    

    您的 JavaScript(使用 jQuery)可能类似于:

    $(function() {
        $('.btnPlay').click(function() {
             $(this).toggleClass('btnPause');
             if($(this).hasClass('btnPause') {
                   yourHandlerID = setInterval ("yourHandler()", 5000 );
             } else {
                    clearInterval (yourHandlerID);
             }
        });
    }); 
    

    您也可以使用计时器类通过 C# 代码执行此操作,例如: http://www.csharphelp.com/2006/02/c-timer-demo/

    并且每次计时器触发您定义的事件处理程序时,您都可以通过数组重复,显示您想要的内容。

    切换暂停按钮只是停止计时器。

    微软参考: http://msdn.microsoft.com/en-us/library/system.timers.timer(VS.71).aspx

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-10-10
      • 1970-01-01
      • 1970-01-01
      • 2014-11-26
      • 2011-06-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多