<html lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <meta http-equiv="Content-Script-Type" content="text/javascript"> <title>サンプル</title> <script type="text/javascript"> <!-- var mylink = new Array( "../../index.html", "../../anime/index.html", "../../hamu/index.html" ); function random_jump() { var i = Math.floor(Math.random() * mylink.length); location.href = mylink[i]; } // --> </script> </head> <body> <a href="javascript:random_jump();">どこかに移動します</a> </body> </html>
ランダムで移動させたいリンク先の URL を Array() を使用して配列として定義しておきます。ランダムに作られた乱数の値にある配列番号の URL に移動します。別ウィンドウに表示させたい場合は location.href = mylink[i]; を window.open(mylink[i]); としてください。
<html lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <meta http-equiv="Content-Script-Type" content="text/javascript"> <title>サンプル</title> <script type="text/javascript"> <!-- var mylink = new Array( ["../../index.html", "トップページ"], ["../../anime/index.html", "アニメーション GIF"], ["../../hamu/index.html", "ハムちゃんの部屋"] ); function random_link() { if (!document.getElementById) return; var ele = document.getElementById("show"); if (ele.style.visibility == "visible") { ele.style.visibility = "hidden"; } else { var i = Math.floor(Math.random() * mylink.length); ele.style.visibility = "visible"; ele.innerHTML = '<a href="' + mylink[i][0] + '" target="_blank">' + mylink[i][1] + '<\/a>'; } } // --> </script> </head> <body> <a href="javascript:random_link();">右側にランダムなリンクを表示</a> <span id="show"> </span> </body> </html>
リンクとして表示したい URL とその名前を Array() を使用して作ります。配列は ["リンク先 URL", "リンクの名称"] を1つの配列としてください。複数の配列がある場合は一番最後の値以外をカンマ「,」で区切ります。
関数 random_link が呼ばれると、最初は表示されていないので、else 内の ele.style.visibility = "visible"; で表示対象の id (id="show") のエレメントを表示可能にさせて、変数 i に代入されたリンク先の URL とリンクの名称を innerHTML で示します。そして、表示されているときに関数が呼ばれると、hidden で表示を隠します。
クリックして移動したくないリンクが表示されたら、再度クリックして非表示にして他のリンクが表示されるまで(ランダムですが)クリックしてください。