我需要通过javascript设置任意样式到跨度.
我知道我可以做这样的事情:span.style.
; 但我需要能够从模板中插入随机的完整样式定义
例如
float:left; text-decoration:underline; cursor:pointer; color:blue;
有没有办法在Javascript中这样做?就像是:
element.;
.style.cssText属性怎么样?这是微软的解释.
把你想要应用的样式扔给它:
document.getElementById('myEl').style.cssText = 'float:left;margin-top:75px;';
至于浏览器支持,虽然它是IE专有的,我相信它得到了很好的支持(至少在IE,FF3和Safari 3.2 WIN中工作).
如果您希望它是轻量级的,请创建一个函数,例如:
function setStyles(element, styles) { for(var s in styles) { element.style[s] = styles[s]; } }
然后你将样式作为对象文字传递:
setStyles(element, {float: "left", textDecoration: "underline", cursor: "pointer", color: "blue"});
请注意,传入的样式引用必须遵循JavaScript立场的命名,因为该函数只是style
通过JavaScript 访问元素的对象来更改样式.
如果你必须从字符串中获取样式输入,那么你可以很容易地解析它并创建对象文字.