【问题标题】:Run function when a statement becomes true当语句为真时运行函数
【发布时间】:2015-02-18 19:50:23
【问题描述】:

我有在用户执行操作后发生变化的布尔变量。

我希望在发生这种情况时运行一个函数。

目前我有这个:

setInterval( function() {
    if(window.username && window.password) {
        [...]
    }
}, 50);

这并不理想,并且会通过在 if 语句中重复某些内容而导致一些问题。

我希望它连续检查一次,而不是每 50 毫秒检查一次。这可能吗?

【问题讨论】:

  • 并非如此。不过,您可以修改设置usernamepassword 的代码,以调度某种事件/回调。

标签: javascript boolean dom-events


【解决方案1】:

目前没有任何“立即”正确的答案,但是您可以使用一些方法来解决该问题。

针对大多数浏览器(和 IE6+)的解决方案是可用的,它使用 onpropertychange 事件和较新的规范 defineProperty。需要注意的是,您需要将变量设为 dom 对象

详细信息:

http://johndyer.name/native-browser-get-set-properties-in-javascript/

另外,请查看 ...https://github.com/melanke/Watch.JS 以获得 非 dom 答案。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-11-17
    • 1970-01-01
    • 1970-01-01
    • 2019-09-29
    • 2014-04-11
    • 2018-11-29
    • 1970-01-01
    相关资源
    最近更新 更多