概要
outsider reflexのJavaScript版スタイルシート切り替えスクリプトを見て、「これだぁっ!」と思い、サイト内に導入しました。だけど、設置後は何かと問題が。別のスクリプトは無いものかと検索してみるとスタイルシート切り替えスクリプト/CSSメモを発見。そして導入。するとまた問題が発生。
ここでいう「問題」というのは、必ずしもスクリプト本体の事を指すとは限りません。もしかしたら、まこっちの設定ミスや何かの手違いが原因なのかも知れません。
そして、問題が解決しないままにスタイルシート切り替えスクリプト/CSSメモを現在Maco House各リソースで使用しています。
問題が解決するまで、スクリプトの使用を中断しています。
このリソースは、スクリプト導入を支援するものではありません。でも、もしかしたらスクリプトを設置しようとしている貴方にとって役に立つかも知れません。
outsider reflex版スタイルシート切り替えスクリプトの設置
スクリプトファイル(SSS.js)の設定
- スタイルシートのファイルパスの規準ディレクトリを設定する
rootPath : 'http://macohouse.s9.xrea.com/css/',
- スタイルシートの設定をする
this.setSheet('標準スタイル', 'general.css', 'screen', 'default');
this.setSheet('古いスタイル1', 'first.css', 'screen');
- 選択フォームのラベルを設定する
formLabel: 'スタイル選択',
スクリプトをHTMLソースに組み込む
- <head>〜</head>に以下のコードを記述する
-
<script type="text/javascript" src="SSS.js"></script> <link rel="stylesheet" type="text/css" title="標準スタイル" href="./css/general.css" /> <link rel="alternate stylesheet" type="text/css" title="古いスタイル1" href="./css/first.css" />
- 切り替えフォームを設置したい場所に以下のコードを記述する
-
<script type="text/javascript"><!-- SSS.writeForm(); --></script>
これで、設置完了。
まこっちが未解決なままな問題点
- JavaOffの時にリソースが丸裸状態になってしまう。
- 1.の問題点を避ける為にCSSをLINKで指定すると、スクリプトの「スタイル無し」が効かなくなってしまう。
上記の点の理由が解る方、またはその問題点を解決できる方がおられましたらまこっちに教えてください。
スタイルシート切り替えスクリプト/CSSメモの設置
スクリプトファイル(changess.js)の設定
- 選択フォームのラベルを設定する
label="スタイル選択:";
- スタイルシートのファイルパスの規準ディレクトリを設定する
cdomain="macohouse.s9.xrea.com";
cpath="/css/";
- 選択フォームを自動的に挿入しない(手動でフォームを書き込む)
insertform=false;
(上記以外にも設定する箇所はありますが、省略しました。)
スクリプトをHTMLソースに組み込む
- <head>〜</head>に以下のコードを記述する
-
<link rel="stylesheet" type="text/css" title="標準スタイル" href="./css/general.css" /> <link rel="alternate stylesheet" type="text/css" title="古いスタイル1" href="./css/first.css" /> <script type="text/javascript" src="changess.js" charset="euc-jp"></script>
- 切り替えフォームを設置したい場所に以下のコードを記述する
-
<script type="text/javascript"><!-- fWriteForm(); --></script>
これで、設置完了。
まこっちが未解決なままな問題点
「選択したスタイルシートはクッキーに記録され、ページを移動しても保存されます。サイト内であれば前のページと同じTITLE属性のスタイルシートが引き継がれます。」
…というのが、Maco Houseでは反映されません。
上記の点の理由が解る方、またはその問題点を解決できる方がおられましたらまこっちに教えてください。