//* スタイルシート切替スクリプト (ラヂオボタン式) */
// いちゆう http://critical.s6.xrea.com/web/cssselect.html
// 津波荘 http://minatsu.pos.to/mod_changess_v02.js
/* 代替スタイルシートに萌え〜 http://toro.2ch.net/test/read.cgi/hp/991400015/398-410
http://toro.2ch.sc/test/read.cgi/hp/991400015/419-439
https://mevius.2ch.net/test/read.cgi/hp/991400015/549-588 */
// 炭色地帯 http://www.usamimi.info/~geko/arch_web/02_sample/018/index.html
// 徒委記 http://www.akatsukinishisu.net/wiki.cgi?CSS%C0%DA%C2%D8%A5%B9%A5%AF%A5%EA%A5%D7%A5%C8
if (document.styleSheets && !(navigator.userAgent.indexOf("Mac_PowerPC") != -1 && navigator.userAgent.indexOf("MSIE 4") != -1)) {/* Scriptでスタイルシートを扱へるブラウザのみ實行 */
/* 以下設定 */
cdomain="livresque.g1.xrea.com";//サイトのドメイン名
cpath="./";//サイトのパス
cdays=10;//クッキーの有效日數 0=ブラウザ終了まで
plusform=false;
/* true=選擇フォームを自動插入する
false=插入しない(手動で を書き込む)*/
/* 以上設定 */
main();
}
function main(){/* メイン函數 */
sfTitles="";
sheet = fGetCookie('sheet');
// Safari = navigator.vendor == "Apple Computer, Inc.";
geckotrail = /\bGecko\/(\d+)/.exec(navigator.userAgent);/// confetto.s31.xrea.com/misc/styles.js
N6 = ((geckotrail !== null) && (Number(geckotrail[1]) < 20030624))? 1:0;/// NS7.1=Mozilla1.4+?
if(!N6){//Netscape6對策 http://east.portland.ne.jp/%7Esigekazu/css/javascript9_2.htm
fGetStyleTitles();
//if(sfTitles.indexOf(sheet)==-1) sheet=sS[0].title;
if(sfTitles.indexOf(sheet)==-1) sheet = sS.preferredTitle || 'Default';
fChangeSS(sheet);///優先無しの場合ローカルでChromeが代替選擇初回は無效になるbugA
}
// else if(sheet!="noCookie")
// document.write('');
/* Mozillaで最初にシート一覽を取得すると不具合を生じるので、meta要素で既定スタイルを設定 */
window.onload=fInit;//fInit(); http://www.remus.dti.ne.jp/~a-satomi/nikki/2003/10b.html#d15n02
window.onunload=fEnd;
}
function fGetStyleTitles() {/* スタイルシートの一覽を取得 */
sS=document.getElementsByTagName('link');//document.styleSheets;の代り、Chrome對策
for(i=0; i-1)
var rel = sS[i].getAttribute("rel");//sS[i].rel
if(rel.toLowerCase()=='stylesheet' && !sS.preferredTitle) sS.preferredTitle = sS[i].title;
else if(/alternate/i.test(rel) && !sS.alternateTitle) sS.alternateTitle=sS[i].title;//不用
}
if (!sS.preferredTitle) sfTitles='Default,'+sfTitles;// 追加 Safari5再讀込すると消える場合?
sfTitles+="スタイル解除";
sfTitle=sfTitles.split(",");
}
function fGetCookie(cName){/* クッキーを取得 */
var c=' ' + document.cookie + ';',// Cf.https://kuragane.jp/javascript-cookie.htm
cName2=' ' + cName + '=',
Position=c.indexOf(cName2);//(cName+'=')
if(Position!=-1) {
var Start=Position+cName2.length;//cName.length+2
var End=c.indexOf(';',Start);
if(End==-1) End=c.length;
var cVal = c.substring(Start,End);
return decodeURIComponent ? decodeURIComponent(cVal) : unescape(cVal);
}
return 'noCookie';
}
function fSetCookie(cName,cTitle){/* クッキーを設定 */
var eTitle = encodeURIComponent ? encodeURIComponent(cTitle) : escape(cTitle);
var cexpires=new Date();
if (cTitle!='')
cexpires.setTime(cexpires.getTime() + 1000*60*60*24*cdays);
else
cexpires.setTime(cexpires.getTime() - 1000*60*60*24);//
var C = cName + '=' + eTitle + '; domain=' + cdomain + '; path=' + cpath
+ ((cdays!=0)?('; expires=' + cexpires.toUTCString()):';');//toGMTString
document.cookie=C;
}
function fChangeSS(ssTitle){/* スタイルシートの動的切り替へ */
if(!sS) return;//
for(i=0; iをinsertBeforeしたが無效。
fSetCookie('sheet',ssTitle);
}
function fSelectSS(obj){/* 選擇されたスタイルシートに切り替へる */
sheet = obj.value;
fChangeSS(sheet);
}
function fInit(){/* ページが讀み込まれたときの處理 */
if(plusform) fAddForm();
if(N6){///不要?
fGetStyleTitles();//Safariでバグる元 ///fAddForm();より前に書くと自動插入でシート名が重出
if(sfTitles.indexOf(sheet)==-1) sheet = sS.preferredTitle || 'Default';
fChangeSS(sheet);
}
}
function fAddForm(){/* 自動插入で選擇フォームを追加 */
var nbody=document.getElementsByTagName('body')[0];
/*var */nHTML = fMakeHTML();
/// nbody.insertAdjacentHTML('afterBegin', '');
nForm = document.createElement('form');
nForm.action = "";
nForm.innerHTML = nHTML;
nbody.insertBefore(nForm, nbody.firstChild);
nForm.style.cssText="direction:ltr;margin:0;background:#ccc;";
nForm.getElementsByTagName('ul')[0].style.cssText ="list-style-type:none;margin:0;padding:0;";
for(var i=0; (nLi=nForm.getElementsByTagName('li')[i]); i++) { nLi.style.display="inline"; }
}
function insertForm(){/* 手動設置のbody内