我想弄清楚为什么在将数据属性添加到(比方说图像)时需要将属性名称放在引号中。我知道这需要完成,但如果有学生问我,我不会有确切的答案。因此,请看下面的两个例子。
1.) 我正在寻找破折号问题的解释。
2.) 有没有办法将其转义,这样您就不需要将其放在引号中?
这不起作用:
$("img").attr({
alt: "a picture of my cat",
data-item : "pet",
data-color : "orange",
});
这确实有效
$("img").attr({
alt: "a picture of my cat",
'data-item' : "pet",
'data-color' : "orange",
});
3.) 传递给 attr() 方法的参数是对象字面量吗?
4.) 这只是对象字面量语法中不允许使用破折号的规则吗?
最佳答案
1.) 在对象字面量中,-
符号不允许作为标识符,因为它也是 javascript 中的减号运算符。
2.) 不,你必须使用引号。
3.) 是的。
4.) 是的,见 1.
关于javascript - jQuery attr() 方法创建数据破折号属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24950517/