jQuery-在函数内部使变量可用

时间:2014-08-05 15:57:44

标签: jquery

我正在尝试在许多函数中使用预定义变量(它是我在页面上的几个函数中使用的API密钥):

var key = '12345';

function get_dom(query) {

    $.ajax({
        type: 'GET',
        url: 'http://www.example.com?key='+key+'&q='+query,
        success: function (data) {
          // do stuff...
        }
    });
}

如何在功能中获得key?我一直在undefined

1 个答案:

答案 0 :(得分:0)

在注释中,您声明在文档就绪时调用了get_dom()函数。通常,当出现范围问题时,就会因为您忘记了文档就绪等事件的回调在全局范围内执行,而您尝试访问的变量不在全局范围内。它是否在某种内部范围中定义,比如包装函数?人们经常这样做以使脚本不引人注目。 为了缓解这种情况,您可以将回调包装在代理函数中,以确保范围符合您的要求。我无数次亲自搞砸了这件事,这很容易做错。