繁体   English   中英

为什么这个for循环返回一个字符的索引而不是整个属性?

[英]Why is this for loop returning the index of a character and not the whole property?

var options = {
fieldsToValidate : {},  
slideDowns : {
    0: '#address-phone-block',
    1: '#zip-dob-block',
    2: '#nextButton'
},
continueButton: "#continue-button",
landingForm: '#landingForm'
}

for (var slider in options.slideDowns[]){
    console.log('did this work?' , slider , options.continueButton[slider])
    $(options.continueButton[slider]).slideDown();  
}

当控制台记录我获得此输出,然后在jQuery选择器上出现此错误:

did this work? 0 #
"Syntax error, unrecognized expression: #"

我知道滑块是0/1/2所以为什么这给了我第一个属性的第一个字符?

由于options.continueButton是带有' #continue-button '值的String ,因此options.continueButton[0]是它的第一个字符,即' # '。

可能你需要使用options.slideDowns而不是options.continueButton ,因为你循环其属性:

for (var slider in options.slideDowns){
    console.log('did this work?' , slider , options.slideDowns[slider])
    $(options.slideDowns[slider]).slideDown();  
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM