设置对象中元素的样式
Set style of element from object
我在为对象中的元素设置样式时遇到问题。在第一个函数中,我用样式代码解析字符串
parseCheckingStyle: function(properties) {
var propertiesList = {},
tempArr=properties.split(/'s*;'s*/, this.length);
tempArr.forEach(function(element, value, array){
var splittedTempArr = element.split(/'s*:'s*/);
propertiesList[splittedTempArr[0]] = splittedTempArr[1];
});
return propertiesList;
};
例如
parse('background: #ccc; color: #fff;')
返回
{background: "#ccc", color: "#000"}
然后,通过这个功能,我尝试设置这个类似对象的元素样式:
setCheckingStyle: function(selector, properties) {
var propertiesList = this.parseCheckingStyle(properties);
for (var key in propertiesList){
selector.style.key = propertiesList[key];
}
};
但风格不是背景。我该如何解决这个问题?
附言:我需要在没有jQuery 的情况下实现
它应该是selector.style[key]
而不是selector.style.key
。当您使用.
时,属性名称是按字面意思使用的,而不是作为变量使用;您必须使用[]
将其作为变量进行评估。
你显然已经知道了,因为你写的是propertiesList[key]
而不是propertiesList.key
。
相关文章:
- insertRule不插入样式元素
- 具有描边属性的 SVG 样式 G 元素
- 如何在样式元素中获取 CSS 代码
- 如何让用户更改表单的样式元素
- 如何根据子组件的状态更改父组件样式元素
- 如何使样式元素的一部分成为函数?(IE:颜色:$random而不是颜色:红色)
- 动态创建的样式元素
- 如何使用javascript获取外部样式元素的css属性
- 在ExtJS中为一个项目添加多个样式元素
- 在目标页面加载完成之前添加样式元素
- 将样式元素动态插入DOM的最后一种跨浏览器方式
- CKEditor 剥离 Rails 中跨度类的样式元素
- 根据单元格内容更改样式元素
- 更改绝对样式元素的位置
- 在React组件中呈现样式元素
- 样式元素左置:页面的x px
- 按钮样式元素的类冲突
- Javascript样式元素
- 在移动设备中,哪一个更快:包括一个额外的CSS文件或在JavaScript中创建一个样式元素
- 需要一种方法来样式元素,我不能访问