我会按身体上的不同类别选择主题,如下所示:
body.smb2{
background-image:url('smb3.jpg');
background-repeat:repeat-x;
background-position:left bottom;
background-attachment: fixed;
background-color: #6899f8;
}
body.zelda{
background-image:url('zeldalttp.jpg');
background-repeat:no-repeat;
background-position:left bottom;
background-attachment: fixed;
background-color: Black;
}
然后使用 javascript(或服务器端)设置 body 类并将选择保存在 cookie 中。
确切地说,将 css 放在 css 文件中,然后您可以像这样更改它:
HTML:
<select id="select">
<option value=""></option>
<option value="smb2">SMB 2</option>
<option value="zelda">Zelda</option>
</select>
纯JS:
var sel = document.getElementById('select');
sel.onchange = function(){
document.body.className = sel.value;
};
或者如果你喜欢jQuery :
$('select').change(function(){
$('body').prop('class',$(this).val());
});
好的,您网站上的问题是,正文已经有很多其他类。并且 className 会覆盖所有这些。一种解决方案是保存旧类,然后像这样添加新类:
var saveclass = null;
var sel = document.getElementById('select');
sel.onchange = function(){
saveclass = saveclass ? saveclass : document.body.className;
document.body.className = saveclass + ' ' + sel.value;
};
或 jQuery:
var currentclass = null;
$('select').change(function(){
$('body').removeClass(currentclass).addClass($(this).val());
currentclass = $(this).val();
});