Javascript 如何根据值动态更改页面的CSS?

Javascript 如何根据值动态更改页面的CSS?,javascript,css,Javascript,Css,我们有一个SharePoint网站。我们通过javascript在母版页上获取一个值,并根据需要更改CSS文件的值 例如:- 假设value=1,然后将CSS文件引用更改为CSS1.CSS(将站点颜色变为红色) 假设value=2,然后将CSS文件引用更改为CSS2.CSS(将站点颜色变为绿色) 这可能吗?有参考资料吗 代码: var clientContext=null; var-web=null; ExecuteOrderLayUntilScriptLoaded(初始化“sp.js”);

我们有一个SharePoint网站。我们通过javascript在母版页上获取一个值,并根据需要更改CSS文件的值

例如:-

假设value=1,然后将CSS文件引用更改为CSS1.CSS(将站点颜色变为红色)

假设value=2,然后将CSS文件引用更改为CSS2.CSS(将站点颜色变为绿色)

这可能吗?有参考资料吗

代码:


var clientContext=null;
var-web=null;
ExecuteOrderLayUntilScriptLoaded(初始化“sp.js”);
函数初始化()
{
clientContext=new SP.clientContext.get_current();
web=clientContext.get_web();
this.list=web.get_lists().getByTitle(“图像”);
load(列表,'Title','Id');
clientContext.executeQueryAsync(Function.createDelegate(this,this.onListLoadSuccess),
Function.createDelegate(this,this.onQueryFailed));
}
函数onListLoadSuccess(发送方,参数){
警报(“列表标题:+this.List.get_title()+”列表ID:+this.List.get_ID());
if(this.list.get_title()=“新站点”)
{
这里我需要申请CSS1
}
其他的
{
应用CSS2
}
}
函数onQueryFailed(发送方,参数){
警报('请求失败'+args.get_message()+'\n'+args.get_stackTrace());
}​

因此,如果您计划切换样式表,您将在页面头部某处加载一个样式表,如下所示:

<link rel="stylesheet" id="css-placeholder" type="text/css" href="default.css"/>

因此,如果您计划切换样式表,您将在页面头部的某处加载一个样式表,如下所示:

<link rel="stylesheet" id="css-placeholder" type="text/css" href="default.css"/>

因此,如果您计划切换样式表,您将在页面头部的某处加载一个样式表,如下所示:

<link rel="stylesheet" id="css-placeholder" type="text/css" href="default.css"/>

因此,如果您计划切换样式表,您将在页面头部的某处加载一个样式表,如下所示:

<link rel="stylesheet" id="css-placeholder" type="text/css" href="default.css"/>

您可以按照LShetty提供的方法进行操作,也可以通过更改主体的类名进行操作:

<!DOCTYPE HTML>
<html>
    <head>
        <title>Bla!</title>
        <style type='text/css'>
            body.red { background-color:red; color:green }
            body.red > div { border-style:solid; border-color:yellow; }

            body.blue { background-color:green; color:red }
            body.blue > div { border-style:solid; border-color:blue; }

        </style>
        <script type='text/javascript'>
            function SetStyle (value) {
                document.getElementById('body').className = value;
            }
        </script>
    </head>
    <body class='body' id='body' >
        Some content here 
        <div> Some coneten here too</div>
        <select onchange='SetStyle(this.value);'>
            <option value='red'> Red Style </option>
            <option value='blue'> Style Blue </option>

        </select>
    </body>
</html>

布拉!
body.red{背景色:红色;颜色:绿色}
body.red>div{边框样式:纯色;边框颜色:黄色;}
body.blue{背景色:绿色;颜色:红色}
body.blue>div{边框样式:纯色;边框颜色:蓝色;}
函数SetStyle(值){
document.getElementById('body')。className=value;
}
这里有一些内容
这里也有一些科内滕
红色风格
蓝色

您可以按照LShetty提供的方法进行操作,或者通过更改主体的类名:

<!DOCTYPE HTML>
<html>
    <head>
        <title>Bla!</title>
        <style type='text/css'>
            body.red { background-color:red; color:green }
            body.red > div { border-style:solid; border-color:yellow; }

            body.blue { background-color:green; color:red }
            body.blue > div { border-style:solid; border-color:blue; }

        </style>
        <script type='text/javascript'>
            function SetStyle (value) {
                document.getElementById('body').className = value;
            }
        </script>
    </head>
    <body class='body' id='body' >
        Some content here 
        <div> Some coneten here too</div>
        <select onchange='SetStyle(this.value);'>
            <option value='red'> Red Style </option>
            <option value='blue'> Style Blue </option>

        </select>
    </body>
</html>

布拉!
body.red{背景色:红色;颜色:绿色}
body.red>div{边框样式:纯色;边框颜色:黄色;}
body.blue{背景色:绿色;颜色:红色}
body.blue>div{边框样式:纯色;边框颜色:蓝色;}
函数SetStyle(值){
document.getElementById('body')。className=value;
}
这里有一些内容
这里也有一些科内滕
红色风格
蓝色

您可以按照LShetty提供的方法进行操作,或者通过更改主体的类名:

<!DOCTYPE HTML>
<html>
    <head>
        <title>Bla!</title>
        <style type='text/css'>
            body.red { background-color:red; color:green }
            body.red > div { border-style:solid; border-color:yellow; }

            body.blue { background-color:green; color:red }
            body.blue > div { border-style:solid; border-color:blue; }

        </style>
        <script type='text/javascript'>
            function SetStyle (value) {
                document.getElementById('body').className = value;
            }
        </script>
    </head>
    <body class='body' id='body' >
        Some content here 
        <div> Some coneten here too</div>
        <select onchange='SetStyle(this.value);'>
            <option value='red'> Red Style </option>
            <option value='blue'> Style Blue </option>

        </select>
    </body>
</html>

布拉!
body.red{背景色:红色;颜色:绿色}
body.red>div{边框样式:纯色;边框颜色:黄色;}
body.blue{背景色:绿色;颜色:红色}
body.blue>div{边框样式:纯色;边框颜色:蓝色;}
函数SetStyle(值){
document.getElementById('body')。className=value;
}
这里有一些内容
这里也有一些科内滕
红色风格
蓝色

您可以按照LShetty提供的方法进行操作,或者通过更改主体的类名:

<!DOCTYPE HTML>
<html>
    <head>
        <title>Bla!</title>
        <style type='text/css'>
            body.red { background-color:red; color:green }
            body.red > div { border-style:solid; border-color:yellow; }

            body.blue { background-color:green; color:red }
            body.blue > div { border-style:solid; border-color:blue; }

        </style>
        <script type='text/javascript'>
            function SetStyle (value) {
                document.getElementById('body').className = value;
            }
        </script>
    </head>
    <body class='body' id='body' >
        Some content here 
        <div> Some coneten here too</div>
        <select onchange='SetStyle(this.value);'>
            <option value='red'> Red Style </option>
            <option value='blue'> Style Blue </option>

        </select>
    </body>
</html>

布拉!
body.red{背景色:红色;颜色:绿色}
body.red>div{边框样式:纯色;边框颜色:黄色;}
body.blue{背景色:绿色;颜色:红色}
body.blue>div{边框样式:纯色;边框颜色:蓝色;}
函数SetStyle(值){
document.getElementById('body')。className=value;
}
这里有一些内容
这里也有一些科内滕
红色风格
蓝色


可能。到目前为止你尝试了什么?你能发布你的javascript代码吗?css文件名也取决于通过javascript获得的值。这不是必须的,但它可以避免大量的
如果
阻塞它只是为了改变网站的颜色吗?改变特定DIV标签的颜色…如果你非常确定这是你想要做的(而不仅仅是在顶级元素上同时拥有样式和开关类)然后,您可以拥有所需样式的请求参数,并使用参数重新加载页面,服务器可以使用该参数选择样式表。到目前为止你尝试了什么?你能发布你的javascript代码吗?css文件名也取决于通过javascript获得的值。这不是必须的,但它可以避免大量的
如果
阻塞它只是为了改变网站的颜色吗?改变特定DIV标签的颜色…如果你非常确定这是你想要做的(而不仅仅是在顶级元素上同时拥有样式和开关类)然后,您可以拥有所需样式的请求参数,并使用参数重新加载页面,服务器可以使用该参数选择样式表。到目前为止你尝试了什么?你能发布你的javascript代码吗?css文件名也取决于通过javascript获得的值。这不是必须的,但是它避免了很多
如果
阻塞,它只是为了更改c