我试图读取自定义(非标准)CSS属性,在样式表(不是内联样式属性)中设置并获取其值.以此CSS为例:
#someElement {
foo: 'bar';
}
Run Code Online (Sandbox Code Playgroud)
我已经设法通过IE7中的currentStyle属性获取其值:
var element = document.getElementById('someElement');
var val = element.currentStyle.foo;
Run Code Online (Sandbox Code Playgroud)
但currentStyle是MS特有的.所以我在Firefox 3和Safari 3中尝试了getComputedStyle():
var val = getComputedStyle(element,null).foo;
Run Code Online (Sandbox Code Playgroud)
...它返回undefined.有没有人知道浏览自定义CSS属性值的跨浏览器方式?
(正如您可能已经注意到的,这不是有效的CSS.但只要值遵循正确的语法,它就应该工作.更好的属性名称将是"-myNameSpace-foo"或其他东西.)
我试图在我的样式表中使用document.styleSheets数组读取CSS选择器.它<link>和<style>标签一起工作正常,但是当我@import在里面使用时,<style>它不会出现在数组中 - 仅作为cssRule(在Safari 3和FF 3中样式为"Undefined").
那么:我如何在@imported文件中解析css?
在jQuery中,DOM节点或jQuery对象可以作为查询中的属性传递,该查询设置范围:
var myScope = $('#someDiv');
$('a',myScope).addClass('red');
$('li',myScope).css('display','inline');
Run Code Online (Sandbox Code Playgroud)
现在,在Dojo中我可以链接几个.query()s,但如果我有一个DOM节点 - 而不是nodeList - 我想用作作用域,我该怎么办?
KTHNX