你可以使用这个脚本,我只是做给你:
var merge = function(objectCollections){
var array = new Array();
foreach(objectCollections,function(objectCollection){
foreach(objectCollection,function(object){
array.push(object);
});
});
return array;
}
var foreach = function(object,loop){
for (var key in object) {
if (object.hasOwnProperty(key)) {
loop(object[key],key);
}
}
}
var changeCSS =function(value){
var links = document.getElementsByTagName('link');
var styles = document.getElementsByTagName('style');
var sheets = merge([links,styles]);
var rules = value.split(/[(\ *{)(\})]/g);
for(var i in sheets){
if(typeof sheets[i] == 'object'){
var sheet = sheets[i].sheet ? sheets[i].sheet : sheets[i].styleSheet;
for(var j in sheet.cssRules){
if(typeof sheet.cssRules[j].selectorText != 'undefined'){
if(sheet.cssRules[j].selectorText == rules[0]){
sheet.cssRules[j].cssText = value;
console.debug(sheet.cssRules[j].cssText);
}
}
}
}
}
}
使用示例:
changeCSS('#main #section1 {width: 25%;}');
这将改变CSS(未设置的样式在标签或某事)
您将无法使用jQuery,因为它基于运行客户端并且无法更改服务器上的文件的JavaScript。 – 2011-05-20 13:26:27
@ Dan Diplo:你可以使用javascript或jquery。只需用javascript检查客户端的文本框值,然后相应地应用hte css。它更干净,更容易 – lovesh 2011-05-20 13:36:42
因此,基本上你正在试图建立一个用户可配置的界面?这不是什么新东西....这是一个更好的实现:http://layout.jquery-dev.net/demos.cfm – bpeterson76 2011-05-20 14:59:14