JavaScript新世紀

2002.5.20.Mon

 3日間かけて、ようやく「クラス」の作り方がわかりました。わふっ。

function CSS(obj) {
  this.dObj = obj;
  this.cObj = obj.styleSheets;
  return this;
}

CSS.prototype.write = function (s) {
  this.dObj.write("<style type='text/css'>"+s+"<\/style>");
}

CSS.prototype.kill = function () {
  for (var i = 0; i < this.cObj.length; i++)
    this.cObj[i].disabled = this.cObj[i].disabled ? false : true;
}
var css = new CSS(document);

 こんな感じでどうでしょう。cssオブジェクトを作りまして、killメソッドとwriteメソッドを実装させてみました。
 css.kill() とやりますと、スタイルシートのON/OFFを切り替えられます。
 css.write("BODY{margin:0px}"); とやると、<style type='text/css'>BODY{margin:0px}</style> を書き出します。

 今まで使ったこともない構文。なにがどう絡んでるのか、さっぱりわからぬ。講座サイトもぽちぽちあったけど、初心者御免でわかりにくいことこの上なし。どうして皆ちっちゃい文字が好きなのだ。スタイルシート固定はやめっつのに。

 結局、クラスを使ってるサイトのソースを解析しながら、トライ&エラーを繰り返して自分で憶えてしまった。今まで何度もつまづいたけど、吸収にこんな苦労したものは初めて。
 でも一回わかりゃこっちのもの。がんがん作って経験値稼ぐでー。わふっ。



Page Index
日付 題名 記事の要約
2002.5.9 Validなサイトマップ HTML4.01 Strict
2002.5.10 便利CSS position:fixed;
2002.5.13 Transitional to Strict Validへの道
2002.5.14 メモ帳をHTMLエディタにする辞書 3.0 作成開始
2002.5.15 HTML辞書 Standard & Pro+
2002.5.20 JavaScript新世紀 クラスへの進化開始
2002.5.21 オタクラス それはサダメ
2002.5.22 なぜかお手本 不可思議リンク
2002.5.23 メモ帳をHTMLエディタにする辞書 3.0 その2 完成
2002.5.24 Klez頂戴 久しぶりのウィルスメール
2002.5.25 オタクラス2 名前考案
2002.5.26 オタクラス3 名前だけ先行
2002.5.28 不精者の綺麗好き キーボード掃除記