如何在Spotfire中更改过滤器的CSS而不显示可见的文本区域?

时间:2019-04-29 06:13:53

标签: css spotfire

我想更改Spotfire中的过滤器之一的CSS。

一种方法是添加一个文本区域,在其中复制过滤器并添加CSS。

例如:

<head>
<style>
.ColumnFilter .sf-element-filter-item:nth-of-type(2) {background-color: salmon;}
</style>
</head>

<SpotfireControl id="42" />

这将在文本区域和过滤器面板中同时更改过滤器的背景颜色。

现在的问题是我不想有文本区域,只有面板。但是,如果我删除了文本区域,面板中的CSS效果就会消失。

1 个答案:

答案 0 :(得分:1)

将css存储在文档属性或javascript中,并使用js将其附加到头部。它仍然需要使用文本区域,但是只需要初始化一次(即,起始页面,登录页面,主页等)。重新加载浏览器时,请记住要回到同一页面,以便js可以重新初始化。

$(function(){
    cssTxt = $("#css").text();  //label property 

    if($('#custom-css').length){
        //do nothing
        console.log('custom-css has already been appended') 
    } else {
        //add css to head
        console.log('%cappending custom-css','color:red') 

        $('head').append($('<style id=custom-css>'+cssTxt +'</style>'));
    }
});