2

如此处所示:

如何从 GM_xmlhttprequest 返回值?

我有一个异步脚本。我想将一个值传递给这个函数,以便在调用 onload 函数时可以使用它在网页中显示。

我面临的挑战是,每次我将它传递给函数时,这个值都会改变。

因此,例如,如果我传入“abc”、“def”、“xyz”。

我最终会得到

xyz
xyz
xyz

代替

abc
def
xyz

所以,我的问题是,我如何将一个值传递给这个函数,以便函数的每次调用都知道在完成时要显示什么?

4

1 回答 1

5

您正在寻找关闭:-

var urls = {"abc": "http://somehost/aurl",
           "def": "http://somehost/otherurl",
           "ghi": "http://someotherhost/aurl" }

for (var k in urls)
{

    GM_xmlhttpRequest({
        method: 'GET',
        url: urls[k],
        onload: function(text) {
            return  function(xhr) {
                //Do stuff with xhr responseText etc and the text parameter
                alert(text)
            }
        }(k)
    }
}

这将在每个未完成的请求完成后提醒“abc”、“def”和“ghi”。

于 2009-02-08T20:16:41.063 回答