use*_*077 6 javascript jquery html5 css3 less
我用下面的css来改变不同的主题颜色
@lightRed: #fdd;
@lightGreen: #dfd;
@lightBlue: #ddf;
@defaultThemeColor:@lightBlue;
#header{
.wrapper();
width:@defaultWidth;
height:80px;
margin-bottom:20px;
background:@defaultThemeColor;
}
#menu{
background:@defaultThemeColor;
}
Run Code Online (Sandbox Code Playgroud)
而html如下:
<div id="swatch">
<ul>
<li><a href="">theme1</a></li>
<li><a href="">theme2</a></li>
<li><a href="">theme3</a></li>
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)
当点击theme1时,应加载@lightRed主题,对于theme2 @lightBlue和对于theme3 @lightGreen
请让我知道我的javascript/jquery应该如何更改主题颜色点击
你可以尝试使用less.js函数,如:
less.refreshStyles()
Run Code Online (Sandbox Code Playgroud)
要么
less.modifyVars()
Run Code Online (Sandbox Code Playgroud)
你可以在这里阅读更多内容:动态改变较少的变量
在事件上使用jQuery和modifyVars这一行.click可能会有效:
$('.theme_option').click(function(event){
event.preventDefault();
less.modifyVars({
'@defaultThemeColor': $(this).attr('data-theme')
});
});
Run Code Online (Sandbox Code Playgroud)