Stylesheet Selector for IE 5+ and Gecko

IE 及び Gecko に対応するスタイルシートセレクタ (技術仕様)

(c) Hiro Konda. 2005/07/27

要素配置と関係

insert block ElementById(var cssFormInsId)
 or BODY Element (BODY.parentNode.insertBefore(New FORM Element,BODY))
 |
 +-- <FORM id="cssForm" style="var cssFormStyle">
     |
     +-- <DIV id="cssFormDiv">
     |   |
     |   +-- <SELECT id="cssSel">
     |   |     |
     |   |     +-- <OPTION value="0 ... ss.length-1">ss.item(0 ... ss.length-1).title</OPTION>
     |   |     |
     |   |     +-- <OPTION value="ss.length">Disabled CSS (無効)</OPTION>
     |   |
     |   +-- <BR />
     |   |
     |   +-- <INPUT id="cssFormAct" type="button" onclick="cssChangeSelected()" style="" value="変更" title="" />
     |   |
     |   +-- if (cssCookieEnabled) <INPUT id="cssFormCC" type="button" onclick="cssCookieClear()" style="" value=" C " title="Cookie消去" />
     |   |
     |   +-- <INPUT id="cssFormHide" type="button" onclick="cssSelectDisplay(0,1)" style="" value=" _ " title="メニュー隠す" />
     |   |
     |   +-- <INPUT id="cssFormHelp" type="button" onclick="cssSelectHelp()" style="" value=" ? " title="ヘルプ" />
     |
     +-- <DIV id="cssFormShowDiv" style="display:none;">
         |
         +-- <INPUT id="cssFormShow" type="button" onclick="cssSelectDisplay(1,1)" style="" value="CSS" title="メニュー表示" />

関数について (function)

cssInIt()
戻り値:無し
各種エラー避けの開始チェック。
window.attachEventwindow.addEventListenerwindow.onloadで実行。
makeCssSelectForm()
戻り値:無し
スタイル選択フォーム作る。
cssInIt()で実行。
getStyleSheetsArray(ini)
戻り値:オブジェクト配列
Opera 7-8用のdocument.styleSheets もどき。xml-stylesheetは、対応できません。
ini (真偽値型)は、スクリプトが初回起動された際にイニシャライズさせる際に用います。 次回以降は、必ず false で呼び出してください。
戻り値は、配列なので document.styleSheets に対する様に .item(x)は、使えません。
cssSetDisabled(exclude)
戻り値:無し
スタイルシートコレクション(document.styleSheets)を操作して、スタイルシートを無効化する。
exclude (数値型)は、document.styleSheets の index値として逆効果(スタイルシート有効)化をする。
スタイルシートコレクションを全て無効化する場合、excludeに -1 を与える。
cssMediaTypesCheck(getMedia, supportMedia)
戻り値: (0 = 失敗 or 1 = 成功)
IE 5以降における MediaType 有効性チェックです。
getMedia は、document.styleSheets.item(index).media(文字型)から与えられ、
supportMedia は、IE 5+以降が有効な "all,screen,print"を与えて、おのおの MediaTypeが適用可能か比較します。
cssChangeSelected()
戻り値: (0 = cookie 失敗 or 1 = cookie 成功)
スタイル選択 [変更] ボタンで実行されます。
OPTIONの value から取得した選択index番号を用い、cssDisabled(exclude)を呼び出して、CSSタイトルを cookie に書きこみます。
cssCookieClear()
戻り値:無し
[C]ボタンで実行されます。
clearCookie(key, path)を呼び出してCookie を過去の古い日時で上書き消去します。
cssSelectHelp()
戻り値:無し
[?] ボタンで実行されます。
このCSSセレクタの操作について alert()ダイアログを用いて簡単に説明します。
cssSelectDisplay(flg ,blnSave)
戻り値:無し
[ _ ] ボタンで実行されます。
flg (数値型)でフォーム表示可否 (0 = no / 1 = yes)、
blnSave (数値型)で Cookie に影響を与えるかを操作します。
cssErrFunc(num, str)
戻り値:無し
エラーダイアログです。
各関数内部で規定エラーが起きた時ユーザーに伝えます。
getCookie(key)
戻り値:文字値
Cookieから key (文字型)を用いてデータを取得します。
setCookie(key, val, expiresDays, path)
戻り値:無し
Cookieへ key (文字型)を用いて valデータを書込みます。
expiresDays (数値型)には、保存日数。path (文字値型)には、Cookieの有効なパスを与えます。
clearCookie(key, path)
戻り値:無し
Cookieへ key (文字型)を用いて、古い有効期間のデータを書込み Cookieを消去します。
path (文字型)には、Cookieの有効なパスを与えます。
GetElementsByTagName(xmlnsURI, tagName)
戻り値:オブジェクトコレクション
xmlnsURI (文字型)を用いて、tagName (文字値型)の要素に関する、HTML オブジェクトコレクションか、XML オブジェクトコレクションのいずれかを返します。
GetElementsByPrefixTagName(xmlnsURI, prefix, tagName)
戻り値:オブジェクトコレクション又は、オブジェクト配列
Standards Extra EDITION 専用の関数
xmlnsURI (文字型)と prefix (文字型)を用いて、tagName (文字値型)の要素に関する、HTML オブジェクトコレクションか、XML オブジェクトコレクションのいずれかを返します。
内部で prefix を利用して作られた配列では、item(x) を使用する事はできません。
CreateElement(xmlnsURI, tagName)
戻り値:オブジェクト
xmlnsURI (文字型)を用いて、tagName (文字値型)の要素に関する、HTML オブジェクトか、XML オブジェクトのいずれか生成して返します。
CEInsert(insFlg, elm, tagDataArray, insTxtValue)
戻り値:無し
IE 独自の insertAdjacentHTMLに似た感じの結果を起こします。
詳細は、ソースコードを参考にしてください。
CEAppendChild(elm, tagDataArray)
戻り値:無し
IE 独自の innerHTMLに似た感じの結果を起こします。
詳細は、ソースコードを参考にしてください。
OptAppendChild(elm, selIdx, textDataArray, valueDataArray)
戻り値:無し
OPTION要素に対する、IE 独自の innerHTMLに似た感じの結果を起こします。
詳細は、ソースコードを参考にしてください。
setInnerText(elm, text)
戻り値:無し
IE 独自の innerTextで文字列を挿入するのに似た感じの結果を起こします。
詳細は、ソースコードを参考にしてください。
getInnerText(elm)
戻り値:文字値
IE 独自の innerTextで文字列を取得するのに似た感じの結果を起こします。
詳細は、ソースコードを参考にしてください。
onresizeNN4()
戻り値:無し
Netscape 4のリサイズバグを補正する関数です。サービススクリプトとして Standards EDITION に内蔵されています。