使用jQuery通过变量设置CSS样式出现报错的技术咨询
解决jQuery .css()方法传变量报错的问题
嘿,我一眼就瞅出你代码里的问题啦!你把jQuery .css()方法的两种调用语法给混在一起了,所以才会报错。
咱们先理清楚正确的用法:
- 如果是设置单个CSS属性,
.css()需要接收两个参数:第一个是属性名(字符串),第二个是属性值(可以是变量或者直接值) - 如果是设置多个CSS属性,才需要用对象的形式,把属性和值放在
{}里,属性和值之间用冒号分隔,不同属性用逗号隔开
你的错误写法是把单个参数的形式和对象形式搞混了——既用了冒号分隔属性和值,又没把它们放进大括号里,JS自然没法正确解析啦。
给你两个正确的写法参考:
写法一:单个参数对形式(适合只设置一个属性)
var display = "block"; $("#" + divId).css("display", display);
写法二:对象形式(适合同时设置多个属性)
var display = "block"; $("#" + divId).css({ "display": display });
这样写就不会报错啦,两种写法都能正常把变量里的样式值应用到元素上~
内容的提问来源于stack exchange,提问作者Daniel Williams
相关产品推荐
相关产品推荐

