Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript domcss跨浏览器库_Javascript_Css - Fatal编程技术网

Javascript domcss跨浏览器库

Javascript domcss跨浏览器库,javascript,css,Javascript,Css,我通常使用jQuery,这消除了大多数跨浏览器的痛苦(尽管不幸的是,并非全部)。然而,它似乎不支持对CSS DOM的操作,这似乎仍然是一个雷区-有一些信息 我们的应用程序允许用户通过生成带有他们选择的颜色的CSS样式表,在一定程度上为他们的站点设置主题。这非常简单,但我希望在让他们将更改直接应用到cssdom并将其保存回数据库并生成CSS文件之前,让他们“预览”它 有谁知道一个库可以使跨浏览器CSS DOM操作更容易?我们很清楚,我并没有试图更改元素或元素集(如$.css())上的css规则,也

我通常使用jQuery,这消除了大多数跨浏览器的痛苦(尽管不幸的是,并非全部)。然而,它似乎不支持对CSS DOM的操作,这似乎仍然是一个雷区-有一些信息

我们的应用程序允许用户通过生成带有他们选择的颜色的CSS样式表,在一定程度上为他们的站点设置主题。这非常简单,但我希望在让他们将更改直接应用到cssdom并将其保存回数据库并生成CSS文件之前,让他们“预览”它


有谁知道一个库可以使跨浏览器CSS DOM操作更容易?我们很清楚,我并没有试图更改元素或元素集(如$.css())上的css规则,也没有试图添加/删除类。我想直接修改样式表。

你不能在主文档的DOM中添加或替换一个
元素,并用生成的CSS填充它吗?

最好和最简单的方法是创建一个.jsp.php或你正在使用的任何东西,它接受颜色参数,然后用替换的颜色呈现.CSS输出

使用JavaScript发出带有颜色参数的请求,并将css脚本附加到页面

可以直接在样式表对象上执行此操作,尽管这将花费更多时间并创建更多维护。每次您想要更改实际用于生产的自定义样式表时,还必须更改预览版本。因此,分歧将接踵而至


只需重新使用将用于生产的样式表模板。

也许您应该尝试以下方法:

document.styleSheets[0].disabled = true;

这将禁用当前页面的第一个样式表。也许如果你玩转它,你可以解决你的问题。

我强烈建议使用。我还没有见过任何其他库具有如此多的功能或如此干净的界面。

CSS DOM上的jQuery样式选择器也会非常糟糕。看起来就像我正在寻找的那种东西。可能,但它要求所有新规则都比旧规则具有更高的优先级,或者我必须完全禁用旧样式表(因此必须复制所有规则,包括我没有修改的规则)。在我看来,修改现有样式表应该更加简单;在不同的浏览器上有很多不同的行为,我太懒了:)我想要一些可以消除痛苦的东西。我试过了,它正在开发IE、FF、Chrome、Safari和Opera。我认为这可以被看作是跨浏览器的解决方案。是的,这一点DOM操作是跨浏览器的,但它只是一点,不是我想做的任何事情。一般来说,CSS DOM支持对跨浏览器不友好。如果我想在用户在颜色选择器上更改颜色时动态更改颜色,则无法很好地扩展;我可能每秒生成数百个请求。。。否则,是的,这将很容易,因为我基本上是在他们保存更改后制作样式表的。