ルビをScriptで制御



大阪 日本橋オオサカニホンバシ素敵ステキ電脳街パソコンがい

htmlsouse.gif (2461 バイト)

<script language="JavaScript"><!--
function ColChange(){
  if(col.innerText=="文字色を赤に"){
    for(var i=1;i<4;i++){
        obj = "rt" + i;
        document.all[obj].style.color = "red";   
    }
    col.innerText = "文字色を青に";
  }else{
    for(var i=1;i<4;i++){
        obj = "rt" + i;
        document.all[obj].style.color = "blue";   
    }
    col.innerText = "文字色を赤に";
  }
}

function SizeChange(){
  if(siz.innerText=="文字サイズを大きく"){
    for(var i=1;i<4;i++){
        obj = "rt" + i;
        document.all[obj].style.fontSize = "16pt";   
    }
    siz.innerText = "標準サイズに戻す";
  }else{
    for(var i=1;i<4;i++){
        obj = "rt" + i;
        document.all[obj].style.fontSize = "11pt";   
    }
    siz.innerText = "文字サイズを大きく";
  }
}
function DecChange(){
  if(dec.innerText=="装飾を付ける"){
    for(var i=1;i<4;i++){
        obj = "rt" + i;
        document.all[obj].style.backgroundColor = "lightblue";
        document.all[obj].style.border = "thin solid magenta";
        document.all[obj].style.textDecoration = "underline";   
    }
    dec.innerText = "装飾を消す";
  }else{
    for(var i=1;i<4;i++){
        obj = "rt" + i;
        document.all[obj].style.backgroundColor = "";
        document.all[obj].style.border = "";
        document.all[obj].style.textDecoration = "";   
    }
    dec.innerText = "装飾を付ける";
  }
}
function VisChange(){
  if(vis.innerText=="ルビを非表示に"){
    for(var i=1;i<4;i++){
        obj = "rt" + i;
        document.all[obj].style.visibility = "hidden";   
    }
    vis.innerText = "ルビを表示する";
  }else{
    for(var i=1;i<4;i++){
        obj = "rt" + i;
        document.all[obj].style.visibility = "visible";   
    }
    vis.innerText = "ルビを非表示に";
  }
}

var flg = 1;
var timerID;
function Change(){
    for(var i=1;i<4;i++){
        obj = "rt" + i;
        document.all[obj].style.visibility = "hidden";
        if(flg == i)document.all[obj].style.visibility = "visible";
    }
    flg ++;
    if(flg > 3)flg = 1;
    timerID = setTimeout("Change()",1500);
}
function Stop(){
    clearTimeout(timerID);
    for(var i=1;i<4;i++){
        obj = "rt" + i;
        document.all[obj].style.visibility = "visible";
    }
}
</script>
</head>

<body>
<button id="col" onclick="ColChange();">文字色を赤に</button>
<button id="siz" onclick="SizeChange();">
    文字サイズを大きく</button>
<button id="dec" onclick="DecChange();">
    装飾を付ける</button><br>
<button id="vis" onclick="VisChange();">
    ルビを非表示に</button><br>
<button onclick="Change();">ルビを変化さす</button>
<button onclick="Stop();">停止</button>

<p style="font:16pt">
<ruby>大阪 日本橋
    <rt id="rt1" style="width:100;text-align:center;">
    オオサカニホンバシ</ruby> は
<ruby>素敵
    <rt id="rt2" style="width:50;text-align:center;">
    ステキ</ruby>な
<ruby>電脳街
    <rt id="rt3" style="width:50;text-align:center;">
    パソコンがい</ruby>
</p>

END(99/8/24)