使用jquery/greasemonkey从样式表克隆css样式

使用jquery/greasemonkey从样式表克隆css样式,jquery,css,greasemonkey,Jquery,Css,Greasemonkey,我正在使用jquery编写一个Greasemonkey脚本,我想从多个页面添加信息,但我想加载的对象是一个带有Id的div,有没有办法检索样式信息,以便将其应用到添加的部分?看一看 这是未经测试的,但代码如下: var someOtherElement = document.getElementById('blah'); var style = window.getComputedStyle(document.getElementById('myId'), ''); for (var i in

我正在使用jquery编写一个Greasemonkey脚本,我想从多个页面添加信息,但我想加载的对象是一个带有Id的div,有没有办法检索样式信息,以便将其应用到添加的部分?

看一看

这是未经测试的,但代码如下:

var someOtherElement = document.getElementById('blah');
var style = window.getComputedStyle(document.getElementById('myId'), '');
for (var i in style) {
    if (style.hasOwnProperty(i)) {
        someOtherElement.style[i] = style[i];
    }
}
这只适用于Firefox(好吧,这可能根本不起作用,但它的基本思想只适用于Firefox),但既然你说你在使用greasemonkey,我想这对你来说并不重要


我想今天早上我的大脑工作不正常,但无论如何,这里有一些东西是有效的,但以一种不可靠的方式。循环浏览要将其复制到的图元的样式

就像我说的,我的大脑不工作,上面的问题是不可靠的。
style
对象具有属性
length
parentRule
,这些属性是只读的,这会使其失效,因此使用try/catch

这是未经测试的,但代码如下:

var someOtherElement = document.getElementById('blah');
var style = window.getComputedStyle(document.getElementById('myId'), '');
for (var i in style) {
    if (style.hasOwnProperty(i)) {
        someOtherElement.style[i] = style[i];
    }
}
这只适用于Firefox(好吧,这可能根本不起作用,但它的基本思想只适用于Firefox),但既然你说你在使用greasemonkey,我想这对你来说并不重要


我想今天早上我的大脑工作不正常,但无论如何,这里有一些东西是有效的,但以一种不可靠的方式。循环浏览要将其复制到的图元的样式

就像我说的,我的大脑不工作,上面的问题是不可靠的。
style
对象具有属性
length
parentRule
,这两个属性都是只读的,这会使它失效,因此try/catch也就不存在了。

window.getComputedStyle(document.getElementById('myId'),'';”运行得很好,但我认为它不是数组。如果我调用“alert(style.backgroundColor);”之类的东西,它会显示样式,但是如果我尝试使用“for(var I in style){”并尝试在for循环中执行任何操作,它都不会执行任何操作。“window.getComputedStyle(document.getElementById('myId'),'');”工作得很好,但我不认为它是一个数组“alert(style.backgroundColor);”它显示样式,但是如果我尝试“for(var I in style){”并尝试在for循环中执行任何操作,它将不会执行任何操作。