B04 文字にさわったら質問を出し、答えによってダイアログを出す

文字にさわったらOK/キャンセル(YES/NO)の確認のダイアログを出します。その後OK/キャンセルの選択結果による処理をalert文で書き出しています。OKを選ぶとtrue、キャンセルはfalseを返しますので、if()文でtrue/falseそれぞれの場合の処理を分けて記述しておきます。

応用:if()文の{ }の中の命令をalert()文以外に取り替えて使ってください。alert()の括弧の中の文章も好きな言葉に取り替えればいろいろな用途に使えます。
参照: javascript, function, onMouseOver, if( ){ }else{ }, confirm(), alert(),

Sample

この文字にさわると怪我するぜっ



Source
ソース
(コピーしてお使いください)
<html>
<head>
<title></title>
</head>
<body>

 <a href="javascript:function voi(){};voi()"
    onMouseOver="

      if( confirm('さわっちゃだめだってば...^^;。\nもう、さわらない?')
           == true ){
        alert('でも、もう一回だけならいいよ(^^)')
      } else {
        alert('さわっちゃ(#^^#)いやん')
      }

    ">
この文字にさわると怪我するぜっ
 </a>

</body>
</html>
a href="javascript:命令文"でクリックしたら"命令文"を実行するという意味ですが ここではfunction voi(){}という 中味のない voi()という関数を作って から、続くvoi()で「なにもしない」^^;を実行してます。Netscapeの3.0からは作らなくてもvoid(0)という命令が用意されています。その場合は a href="javascript:void(0)" と書きます

onMouseOver="命令文"でマウスがさわったら"命令文"を実行するという意味です

if( xx == true ){ "命令文" }else{ "命令文" }は、もしxxがtrueなら最初の"命令文"を実行し、違ったら後の"命令文"を実行するという意味です。この場合、if( confirm("xxx") ){ "命令文" }else{ "命令文" }という風に==trueを省略してもokです

confirm("文章")は"文章"の入ったYES/NOダイアログを表示しOK(YES)ならtrue、キャンセル(NO)ならfalseを返します

\nは改行の意味です

alert("文章")で"文章"の入ったダイアログを表示します


Contents
| CONTENTS
| PART1 これだけ知っていれば大丈夫
| PART2 サンプルの紹介
| PART3 JavaScript言語仕様
| PART4 JavaScriptクイック書式一覧
| PART5 JavaScriptサイト
| オンラインサポートページ(回線をつないでください)


Maintained by
tato@fureai.or.jp works1997 Toshirou Takahashi