修改css文件路径后 默认样式显示不出来。修改前正常:
<script language="javascript" type="text/javascript">
<script language="javascript" type="text/javascript">
<!--
var arrCSS=[
    ["<img src='images/ocean.gif' width='16' height='8' class='themes' alt='Ocean'>","css/ocean.css"],
    ["<img src='images/tangerine.gif' width='16' height='8' class='themes' alt='Tangerine'>","css/tangerine.css"],
    ["<img src='images/violet.gif' width='16' height='8' class='themes' alt='Violet'>","css/violet.css"],
    ["<img src='images/oyster.gif' width='16' height='8' class='themes' alt='Oyster'>","css/oyster.css"],
    ["<img src='images/grass.gif' width='16' height='8' class='themes' alt='Grass'>","css/grass.css"],
    ""
];
// *** function to replace href="#" ***
function v(){
return;
}
// *** Cookies ***
function writeCookie(name, value) { 
exp = new Date(); 
exp.setTime(exp.getTime() + (86400 * 1000 * 30));
document.cookie = name + "=" + escape(value) + "; expires=" + exp.toGMTString() + "; path=/"; 

function readCookie(name) { 
var search; 
search = name + "="; 
offset = document.cookie.indexOf(search); 
if (offset != -1) { 
offset += search.length; 
end = document.cookie.indexOf(";", offset); 
if (end == -1){
end = document.cookie.length;
}
return unescape(document.cookie.substring(offset, end)); 
}else{
return "";
}
}
////////////////////////////////////
// StyleSheet
////////////////////////////////////
function writeCSS(){
  for(var i=0;i<arrCSS.length;i++){
    document.write('<link title="css'+i+'" href="'+arrCSS[i][1]+'" rel="stylesheet" disabled="true" type="text/css" />');
  }
    setStyleSheet(readCookie("stylesheet"));
}
function writeCSSLinks(){
  for(var i=0;i<arrCSS.length-1;i++){
    if(i>0) document.write('  ');
    document.write('<a href="javascript:v()" onclick="setStyleSheet(\'css'+i+'\')">'+arrCSS[i][0]+'</a>');
  }
}
function setStyleSheet(strCSS){
  var objs=document.getElementsByTagName("link");
  var intFound=0;
  for(var i=0;i<objs.length;i++){
    if(objs[i].type.indexOf("css")>-1&&objs[i].title){
      objs[i].disabled = true;
      if(objs[i].title==strCSS) intFound=i;
    }
  }
  objs[intFound].disabled = false;
  writeCookie("stylesheet",objs[intFound].title);
}
writeCSS();
setStyleSheet(readCookie("stylesheet"));
</script>修改后有问题:<script type="text/javascript">
var arrCSS=[
    ["<img src='{$template}/images/qiean01.gif' width='10' height='10' class='qiean01' title='绿色风格'>","{$template}/css/s1bbcnsla.css"],
    ["<img src='{$template}/images/qiean01.gif' width='10' height='10' class='qiean02' title='红色风格'>","{$template}/css/s2bbcnsla.css"],
    ["<img src='{$template}/images/qiean01.gif' width='10' height='10' class='qiean03' title='紫色风格'>","{$template}/css/s3bbcnsla.css"],
["<img src='{$template}/images/qiean01.gif' width='10' height='10' class='qiean04' title='黑色风格'>","{$template}/css/s4bbcnsla.css"],
    ""
];
// *** function to replace href="#" ***
function v(){
return;
}
// *** Cookies ***
function writeCookie(name, value) { 
exp = new Date(); 
exp.setTime(exp.getTime() + (86400 * 1000 * 30));
document.cookie = name + "=" + escape(value) + "; expires=" + exp.toGMTString() + "; path=/"; 

function readCookie(name) { 
var search; 
search = name + "="; 
offset = document.cookie.indexOf(search); 
if (offset != -1) { 
offset += search.length; 
end = document.cookie.indexOf(";", offset); 
if (end == -1){
end = document.cookie.length;
}
return unescape(document.cookie.substring(offset, end)); 
}else{
return "";
}
}
////////////////////////////////////
// StyleSheet
////////////////////////////////////
function writeCSS(){
  for(var i=0;i<arrCSS.length;i++){
    document.write('<link title="css'+i+'" href="'+arrCSS[i][1]+'" rel="stylesheet" disabled="true" type="text/css" />');
  }
    setStyleSheet(readCookie("stylesheet"));
}
function writeCSSLinks(){
  for(var i=0;i<arrCSS.length-1;i++){
    if(i>0) document.write('  ');
    document.write('<a href="javascript:v()" onclick="setStyleSheet(\'css'+i+'\')">'+arrCSS[i][0]+'</a>');
  }
}
function setStyleSheet(strCSS){
  var objs=document.getElementsByTagName("link");
  var intFound=0;
  for(var i=0;i<objs.length;i++){
    if(objs[i].type.indexOf("css")>-1&&objs[i].title){
      objs[i].disabled = true;
      if(objs[i].title==strCSS) intFound=i;
    }
  }
  objs[intFound].disabled = false;
  writeCookie("stylesheet",objs[intFound].title);
}
writeCSS();
setStyleSheet(readCookie("stylesheet"));
</script>

解决方案 »

  1.   

    我觉得可能是以下代码中
    var arrCSS=[
        ["<img src='{$template}/images/qiean01.gif' width='10' height='10' class='qiean01' title='绿色风格'>","{$template}/css/s1bbcnsla.css"],
        ["<img src='{$template}/images/qiean01.gif' width='10' height='10' class='qiean02' title='红色风格'>","{$template}/css/s2bbcnsla.css"],
        ["<img src='{$template}/images/qiean01.gif' width='10' height='10' class='qiean03' title='紫色风格'>","{$template}/css/s3bbcnsla.css"],    
        ["<img src='{$template}/images/qiean01.gif' width='10' height='10' class='qiean04' title='黑色风格'>","{$template}/css/s4bbcnsla.css"],
        ""
        ];
    {$template}没有替换过来的原因,你用调试工具看下,这个在html中到底是什么。
      

  2.   


    这个换肤 把这加载css这句<link...  放JS里 JS代码外没有 第1次浏览不显示默认样式 空白, demo里却正常 纳闷。。<link rel="stylesheet" type="text/css" href="123.css" />
    JS里: 
    <link title="css'+i+'" href="'+arrCSS[i][1]+'" rel="stylesheet" disabled="true" type="text/css" />
    之前换肤用的JQuery 那个代码跟网站程序的JS有冲突 没办法换这个 
    那个外面有<link...这样:
    <link rel="stylesheet" type="text/css" id="cssSkin" href="{$template}/css/s1bbcnsla.css" /><script type="text/javascript">
    //检查cookie
    if($.cookie("skinID")){
    $("#cssSkin").attr("href","{$template}/css/s" + $.cookie("skinID") + "bbcnsla.css");
    }
    </script>
    <script type="text/javascript">
    $(function(){
    //点击
    $(".skinList > li").each(function(){
    $(this).click(function(){
    var id = $(this).attr("id");
    var m = 1;
    if(id !== "def"){
    m = parseInt(id.slice(-1))+1;
    }
    var href = "{$template}/css/s" + m + "bbcnsla.css";
    $("#cssSkin").attr("href",href);
    //设置cookie
    $.cookie("skinID",m);
    });
    });    
    });
    </script>
      

  3.   

    找到原因了 用排除法 去掉页面里这两句  就正常了显示默认样式了: <link rel="shortcut icon" href="favicon.ico" type="image/x-icon" />
    <link rel="Book" href="favicon.ico">