我创建了一个名称空间来保存变量,以便2个不同的函数可以使用它们。我的第一个变量使用jQuery并且运行正常。第二个尝试使用前一行中建立的变量并失败。这是未定义的。
示例:
varHolder = {
buildStep4: $('#buildStep4'),
jetSpan: buildStep4.find('#jetSpan')
};
有没有办法正确地做到这一点?
答案 0 :(得分:0)
在有效的HTML文档中不能复制ID,因此向id选择器提供上下文没有任何意义,您只需执行
jetSpan: $('#jetSpan')
答案 1 :(得分:0)
您可以捕获该值,但使用一个函数来保持其范围,以便在您创建对象后它不存在。
varHolder = (function() {
var buildStep4 = $('#buildStep4');
return {
buildStep4: buildStep4,
jetSpan: buildStep4.find('#jetSpan')
}
})();
您还可以零碎地构建您的对象:
varHolder = {};
varHolder.buildStep4 = $('#buildStep4');
varHolder.jetSpan = varHolder.buildStep4.find('#jetSpan');