表示

basic.gif (3042 バイト)

 好きな文字列を入れたいPart2 IE.gif (941 バイト)4.0以上

“好きな文字列を入れたいPart1“とよく似た働きをする命令をやってみよう。
まず、命令を見てみよう。

★.outerText = "■";・・・・・★に文字列■を挿入する。
■:表示させたい文字列

以前の命令ではtext.innerText=""という命令をやったよね。
今回の命令はtext.outerText=""という命令だよ。
違う部分は赤の部分だね、
つまり、この部分が二つの働きの違いを表している。
innerは内側という感じの意味、outerというのは外側という感じの意味だね。
つまり、前回のinnerはタグの内側に挿入されたんだ。
そして、今回のouterはタグの外側、つまりタグを含めて全てが置き換えられてしまうんだ。
じゃあ、実際にどのような働きをしているか見てみよう。
前回のtext.innerText="操作しました"という命令は、

    <B id="text">この部分を操作</B>
              ↓
    <B id="text">
操作しました</B>

つまり、表示部分は、

    この部分を操作       ←太字
      
    操作しました    ←太字のまま

このようになるんだったね。
しかし、
今回の場合は前回と違う。
命令としてtext.outerText="操作しました"を実行すると、

    <B id="text">この部分を操作</B>   ←周りのタグを含む全ての部分(赤の部分)が置き換えられる。
        ↓
   
操作しました

このように、周りのタグを含む全ての部分が置き換えられてしまうんだ。
つまり、表示部分は、

    この部分を操作  ←始めは太字
      
    操作しました     ←周りのタグも置き換えられて普通の太さになる

のようになる。
また、今回の命令もよく見てみると、outerText。つまり、テキスト(文字)を挿入するという意味なんだ。
テキストを挿入するというのはどういうことか、もし次のような命令を実行すると。
text.outerText="<B>ヨッシーが</B>操作しました"   ←タグが入った

    <B id="text">この部分を操作</B>
              ↓
   
<B>ヨッシーが</B>操作しました   
←周りのタグを含む部分が置き換えられた。置き換えられたタグは文字として認識される

つまりこれを表示すると、

    この部分を操作
      
    <B>ヨッシーが</B>操作しました   ←タグも文字として認識される。さらに置き換えによって太字じゃなくなる。

このように、前回と同じくタグを使った文字には変換できないんだ。

じゃあ、プログラムを簡単に作ってみよう。

<SPAN onmouseover="this.outerText='<B>あなたが</B>さわりました'">  ←触るとこのタグを含む全体が""で囲まれた文字に置き換えられる。
触って〜!!
</SPAN>

これを実行すると、

触って〜!!
↑マウスが上に乗ると文字が変わる

文字を触った後は、
    <B>あなたが</B>さわりました
になっているので、これ以上文字に触れても何も起こらないよ。
(※なぜなら、<SPAN onmouseover="this.outerText='<B>あなたが</B>さわりました'">触って〜!!</SPAN>というタグはもう置き換えられて存在しないから。)
実際にこれを使って何かをするというのは少ないかもしれない、どちらかというとinnerTextinnerHTMLの命令を使うことが多いと思うよ。

ここで標準編は終わりです。
top.gif (583 バイト) 目次へ戻る


back.gif (1116 バイト) フォームのボタンを変える
top.gif (583 バイト) 目次へ戻る