EXTJS中更换皮肤很简单,以下是效果图,后面附上源代码
效果图:
![](https://images.cnblogs.com/cnblogs_com/chhuic/EXTJS01.jpg)
![](https://images.cnblogs.com/cnblogs_com/chhuic/EXTJS02.jpg)
![](https://images.cnblogs.com/cnblogs_com/chhuic/EXTJS03.jpg)
![](https://images.cnblogs.com/cnblogs_com/chhuic/EXTJS04.jpg)
Ext/resources/css/ext-all.css
Ext/adapter/ext/ext-base.js
Ext/ext-all.js
三个文件从这里下载
![](https://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
Code
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>EXTJS 更换皮肤</title>
<link href="Ext/resources/css/ext-all.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" type="text/css" /><%--这句很重要,用于更换皮肤的CSS--%>
<script src="Ext/adapter/ext/ext-base.js" type="text/javascript"></script>
<script src="Ext/ext-all.js" type="text/javascript"></script>
<script language="javascript" type="text/javascript">
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
function makeCookie()
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif)
{
var themes =
[
['default', '默认'],
['gray', '灰色'],
['darkgray', '暗灰色'],
['olive', '橄榄绿'],
['black', '黑色'],
['purple', '紫色'],
['slate', '暗蓝色']
];
var cbThemes = new Ext.form.ComboBox
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
(
{
id: 'cbThemes',
store: themes,
80,
typeAhead: true,
triggerAction: 'all',
emptyText:'界面主题',
selectOnFocus:true
});
cbThemes.on
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
(
{
"select":function(field,newValue,oldValue)
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
var css = newValue.data.value;
//设置cookies
var date=new Date();
date.setTime(date.getTime()+30*24*3066*1000);
document.getElementsByTagName("link")[1].href="Ext/resources/css/xtheme-" + css + ".css";
document.cookie="css="+css+";expires="+date.toGMTString();
}
});
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
var win = new Ext.Window
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
(
{
title:"更换皮肤测试窗口",renderTo:document.body,500,height:300,x:300,y:100,
bbar:['皮肤选择','',cbThemes]
});
win.show();
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
document.body.onload = function()
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
var cookiesArr=document.cookie.split(";");
var css;
for(var i=0;i<cookiesArr.length;i++)
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
var arr=cookiesArr[i].split("=");
if(arr[0]=="css")
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
css=arr[1];
break;
}
}
document.getElementsByTagName("link")[1].href = "Ext/resources/css/xtheme-" + css + ".css";
};
}
Ext.onReady(makeCookie);
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
</div>
</form>
</body>
</html>
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)