我正在使用waitForKeyElements在 Greasemonkey 中,但不理解这段代码:
if (!alreadyFound) {
//--- Call the payload function.
var cancelFound = actionFunction (jThis);
if (cancelFound)
btargetsFound = false;
else
jThis.data ('alreadyFound', true);
}
actionFunction
是我传入的回调。它应该只返回 undefined
除非我对其进行编码以返回某些内容,对吗?在什么条件下我会这样做? btargetsFound
需要为 True 才能阻止 waitForKeyElements 稍后调用自身。因此,以某种方式返回某些内容意味着“我找到的元素之一,即使我找到了它并在其上调用了有效负载函数,我仍然需要重试?”
最佳答案
是的,您的理解是正确的。另一种说法是回调可以返回 true
来表示“此元素与选择器匹配,但不是我想要的,请稍后再试”。我猜这适用于您想要的内容是通过多个 AJAX 调用分几个阶段构建的情况,或者类似的情况。
请注意,返回 true
将导致下次计时器触发时使用相同的元素再次调用回调。
关于javascript - waitForKeyElements 中的这段代码有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35346069/