【问题标题】:Equivalent of setTimeout and setInterval function in Script#脚本中的 setTimeout 和 setInterval 函数的等价物#
【发布时间】:2012-11-10 21:25:11
【问题描述】:

如何在 C# 中将 setTimeout()setInterval 方法与 Script# 一起使用?

比如怎么写:setInterval(function(){alert("Hello")},3000);

【问题讨论】:

    标签: c# javascript script#


    【解决方案1】:

    SetTimeout()SetInterval()Script 类的一部分(或 Window 用于以前版本的 Script#

    int intervalid = Script.SetInterval(delegate { Window.Alert("Hello"); }, 3000);
    

    或者你可以写一个显式的处理函数:

    Script.SetTimeout(TimeoutHandler, 3000);
    
    void TimeoutHandler() {
        Window.Alert("Hello");
    }
    

    以后要丢弃计时器间隔,您可以使用ClearInterval()

    Script.ClearInterval(intervalid);
    

    【讨论】:

    • 我在 Script 类中看不到这个方法。他们在哪些命名空间中定义?
    • 我修好了你的单据(你把 WindowScript 混在一起了)。
    • 您的编辑有误。 SetTimeout() 和 SetInterval() 显然是脚本类的一部分。见:github.com/nikhilk/scriptsharp/blob/cc/src/Core/CoreLib/…
    • 从 0.8 开始,它们将在 Script 类中。他们曾经在Window上……但那是不正确的。例如,这些方法在 node.js 中也可用......实际上它们是在全局对象上定义的(恰好是浏览器中的窗口)。
    • @NikhilK,我很怀疑,为什么我的 Script# 库的 Window 类和 aschoenebeck 代码的 Script 类中的这些函数。谢谢你的解释。 aschoenebeck,你能用 NikhilK remakrs 更正你的答案吗(你的代码适合 Script# >= 0.8 的版本)?
    猜你喜欢
    • 1970-01-01
    • 2020-06-29
    • 1970-01-01
    • 2014-07-27
    • 2014-12-06
    • 1970-01-01
    • 2021-06-29
    • 1970-01-01
    • 2017-03-18
    相关资源
    最近更新 更多