Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用在名称空间中创建的jQuery变量?_Javascript_Jquery - Fatal编程技术网

Javascript 如何使用在名称空间中创建的jQuery变量?

Javascript 如何使用在名称空间中创建的jQuery变量?,javascript,jquery,Javascript,Jquery,我创建了一个名称空间来保存变量,以便两个不同的函数可以使用它们。我的第一个变量使用jQuery,工作正常。第二个尝试使用前一行中建立的变量,但失败。没有定义 例如: varHolder = { buildStep4: $('#buildStep4'), jetSpan: buildStep4.find('#jetSpan') }; 有什么方法可以正确地做到这一点吗?id不能在有效的HTML文档中复制,因此为id选择器提供上下文是没有意义的,您只需这样做即

我创建了一个名称空间来保存变量,以便两个不同的函数可以使用它们。我的第一个变量使用jQuery,工作正常。第二个尝试使用前一行中建立的变量,但失败。没有定义

例如:

varHolder = {
        buildStep4: $('#buildStep4'),
        jetSpan: buildStep4.find('#jetSpan')
    };

有什么方法可以正确地做到这一点吗?

id不能在有效的HTML文档中复制,因此为id选择器提供上下文是没有意义的,您只需这样做即可

jetSpan: $('#jetSpan')

id不能在有效的HTML文档中复制,因此为id选择器提供上下文是没有意义的,您只需这样做即可

jetSpan: $('#jetSpan')

您可以捕获该值,但可以使用函数来保持其作用域,以便在创建对象后该值不存在

varHolder = (function() {
    var buildStep4 = $('#buildStep4');
    return { 
        buildStep4: buildStep4,
        jetSpan: buildStep4.find('#jetSpan')
    }
})();
您还可以逐段构建对象:

varHolder = {};
varHolder.buildStep4 = $('#buildStep4');
varHolder.jetSpan = varHolder.buildStep4.find('#jetSpan');

您可以捕获该值,但可以使用函数来保持其作用域,以便在创建对象后该值不存在

varHolder = (function() {
    var buildStep4 = $('#buildStep4');
    return { 
        buildStep4: buildStep4,
        jetSpan: buildStep4.find('#jetSpan')
    }
})();
您还可以逐段构建对象:

varHolder = {};
varHolder.buildStep4 = $('#buildStep4');
varHolder.jetSpan = varHolder.buildStep4.find('#jetSpan');

似乎你可以简单地做
jetSpan:$('#jetSpan')
似乎你可以简单地做
jetSpan:$('#jetSpan')
谢谢你的回复。当然,你是对的。只是我正在构建一个单页应用程序,我的HTML代码越来越长。谢谢你的回复。当然,你是对的。只是我正在构建一个单页应用程序,我的HTML代码越来越长。谢谢你的回答。我试过零碎的方法,效果很好。@user1592980:我很高兴听到这个消息。如果您找到了问题的答案,请“接受”答案,这样人们就知道您在这方面不再需要帮助。谢谢您的回答。我试过零碎的方法,效果很好。@user1592980:我很高兴听到这个消息。如果你找到了问题的答案,请“接受”答案,这样人们就知道你在这方面仍然不需要帮助。