マウスでクリックするとランダムで行き先が変わるようなJAVAスクリプトを探しているのですが、なかなかみつかりません。紹介しているページがありましたら教えて下さい。
もうひとつは、THIS構文というのがJAVAスクリプト言語としてあるみたいですが、理解できないので、教えて下さい。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

> マウスでクリックするとランダムで行き先が変わるようなJAVAスクリプトを探しているのですが、なかなかみつかりません。



実用性はいざ知らず、題材としてはわかりやすいので、いろいろありますよ。
どの検索エンジンでも良いので "ランダム リンク JavaScript" なんてキーワードで
探してみてください。そのうちのひとつを参考URLに書いておきます。

> THIS構文というのがJAVAスクリプト言語としてあるみたいですが、理解できない

自分自身を指すオブジェクトです。関数の中で使う場面は、あまり想像できない
のですが、たとえば、type=submit 以外のボタンでも、押されたら submit する
場合には、

<input type="button" onClick="this.form.submit()">

というふうに書きます(例自体に有用性はないです)。

this が、このボタンを指します。ボタンはプロパティとして、それが含まれる
<form> を指す form というプロパティを持ってます。form は submit を
実行する submit() というメソッドを持ってます。関数に分けると、こんな感じ。

<script>
function do_submit(f) {
  f.submit();
}
</script>

<input type="button" onClick="do_submit(this.form)">

参考URL:http://www.oitaweb.ne.jp/hp/tatsuya/java/rndlink …
    • good
    • 0
この回答へのお礼

ありがとうございました。
是非使わせていただきます!

お礼日時:2001/07/22 14:18

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Qブログ上で複数のjavaスクリプトから2つのjavaスクリプトをランダムに表示させたい

ブログ上に、複数のjavaスクリプトからランダムに2つのjavaスクリプトを選んで表示させたいのですが、コードがわからないので教えていただきたいです。選ばれた二つは被らないようにしたいです。

使用したいjavaスクリプトのコードは
<script type="text/javascript" charset="euc-jp"
src="○○1"></script>
<script type="text/javascript" charset="euc-jp"
src="○○2"></script>
<script type="text/javascript" charset="euc-jp"
src="○○3"></script>
のようになっています。

javaを使って画像や文字をランダムに表示する方法はあったので応用しようとしたのですがうまくいきませんでした。

よろしくお願いします。

Aベストアンサー

No.1です。
​http://meshiuma.net/​の中段右のアンケートの部分を
見ると、外部scriptのソースをphpでdocument.write文を動的に
出力してますね。しかもおきて破りの方法ですね、<script>要素や<css>
要素までdocument.writeしてます。
さらに致命的なのはdocument.closeの出力がありません。
phpをコールする時idパラメータを変えれば異なるアンケート書き出しの
ソースを履くみたいです。
アンケートをランダムに選ぶ処理は、おいといて、
そもそも複数のアンケートを表示できるのか試してみました。
結果、firefoxだと表示はしますが、document.close()が無いので
ロードが完了せず、次の処理に進みません。IEではまったくだめです。
自身のサーバー側でproxyとなる別の処理を作って、加工して返せば、なんとかなるかも?

(試したソース)
<html>
<head>
<script type="text/javascript">
function changeSRC(){
var url1='http://blog.with2.net/vote/form.php?sid=694531&id=7315&size=1&s_ttc=%233c78a7&s_dc=%23333333&s_cc=%23333333&s_tc=%23333333&nocm=y&nops=y&target=_blank';
var url2='http://blog.with2.net/vote/form.php?sid=694531&id=7316&size=1&s_ttc=%233c78a7&s_dc=%23333333&s_cc=%23333333&s_tc=%23333333&nocm=y&nops=y&target=_blank';
var url3='http://blog.with2.net/vote/form.php?sid=694531&id=7317&size=1&s_ttc=%233c78a7&s_dc=%23333333&s_cc=%23333333&s_tc=%23333333&nocm=y&nops=y&target=_blank';
var objhead1 = document.getElementById("ancate1");
var objhead2 = document.getElementById("ancate2");
var objhead3 = document.getElementById("ancate3");
var script1 = document.createElement("script");
script1.setAttribute("src",url1);
var script2 = document.createElement("script");
script2.setAttribute("src",url2);
var script3 = document.createElement("script");
script3.setAttribute("src",url3);
objhead1.appendChild(script1);
objhead2.appendChild(script2);
objhead3.appendChild(script3);
}
</script>
</head>
<body>
<input type="button" onclick="changeSRC();">
<div id="ancate1"></div>
<div id="ancate2"></div>
<div id="ancate3"></div>
</body>
</html>

No.1です。
​http://meshiuma.net/​の中段右のアンケートの部分を
見ると、外部scriptのソースをphpでdocument.write文を動的に
出力してますね。しかもおきて破りの方法ですね、<script>要素や<css>
要素までdocument.writeしてます。
さらに致命的なのはdocument.closeの出力がありません。
phpをコールする時idパラメータを変えれば異なるアンケート書き出しの
ソースを履くみたいです。
アンケートをランダムに選ぶ処理は、おいといて、
そもそも複数のアンケートを表示できるのか試してみました。
...続きを読む

Qジャンル別にランダム画像を表示させるスクリプト

タイトルの通り、ジャンル別にランダム画像を表示させるスクリプトを探しています。

イメージとしては、ジャンルAにはA1.jpg, A2.jpg, A3.jpg...のうち一つをランダム表示。
ジャンルBにはB1.jpg,B2.jpg,B3.jpg.....のうち一つをランダムで表示。
などなど複数のジャンルにおいて、画像をランダムに、1ページで表示させたいと考えています。(添付画像ご参照ください)

"javascript 複数 ランダム 表示"などのキーワードで探したところ、
「複数の画像を重複せずに表示する」などのようなスクリプトでしたので、
新たに質問させていただきました。

PHPでも構いません。
もし知ってらっしゃる方がいましたらよろしくお願いいたします。

Aベストアンサー

HTMLが不明ですが、基本的には#1のお礼の考え方でもできるはずです。

ただし、#2様の回答にもあるように、
 window.onload = function(){ ~~

 window.onload = function(){ ~~
を繰り返さすと、毎回上書きされてしまいますので、最後のものしか有効になりません。


処理を少しまとめて、id="hoge"直下のdiv要素に順に背景を設定する一例。
(数はいくつでもかまいません)


(全角空白は半角に)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="ja">
<head><title>sample</title>
<meta http-equiv="Content-Style-Type" content="text/css">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<style type="text/css">
<!--
#hoge { width:800px; }
#hoge div { width:400px; height:300px; float:left; }
//-->
</style>

<script type="text/javascript">
<!--
window.onload = function(){

 var setBGImage = (function(){
  var div = document.getElementById("hoge").childNodes;
  var divs = [];
  var i;
  for(i=0; i<div.length; i++)
   if(div[i].nodeName == "DIV") divs.push(div[i]);

  i = 0, div = null;
  return function(list){
   if(!divs[i]) return;
   var images = list.split(",");
   var n = Math.floor(Math.random() * images.length);
   divs[i++].style.backgroundImage = "url(" + images[n] + ")";
  }
 }());

 setBGImage("A1.jpg,A2.jpg,A3.jpg,A4.jpg");
 setBGImage("B1.jpg,B2.jpg,B3.jpg,B4.jpg");
 setBGImage("C1.jpg,C2.jpg,C3.jpg");
 setBGImage("D1.jpg,D2.jpg,D3.jpg");
}
//-->
</script>
</head>

<body>

<div id="hoge">
 <div>categoryA</div>
 <div>categoryB</div>
 <div>categoryC</div>
 <div>categoryD</div>
</div>

</body>
</html>

HTMLが不明ですが、基本的には#1のお礼の考え方でもできるはずです。

ただし、#2様の回答にもあるように、
 window.onload = function(){ ~~

 window.onload = function(){ ~~
を繰り返さすと、毎回上書きされてしまいますので、最後のものしか有効になりません。


処理を少しまとめて、id="hoge"直下のdiv要素に順に背景を設定する一例。
(数はいくつでもかまいません)


(全角空白は半角に)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="ja">
<head><title>sample</title>
<...続きを読む

Qthis.src等のthisについて

<img src="a.jpg" onmouseover="this.src='b.jpg'" onmouseout="this.src='a.jpg'">
こんなかんじで、マウスオーバーでjavascriptが作動するソースがあった場合
ここでの”this”は、”自分自身”を指してる事になると思うのですが
thisを使わず、絶対的に書こうとした場合なんと書くのでしょうか?

Aベストアンサー

idをふって、document.getElementById("そのid").src=・・・

Q出荷予定日を表示するJavaスクリプト

HP上で掲載する出荷予定日を表示するJavaスクリプトを教えてください。
土日・祝日が定休日で、それ以外は長期連休を休みにしています。

今日2015年12月15日(火)発注分でいうと...

「今日ご注文いただいた分は2015年12月19日(金)発送予定です」

という風に、日付や曜日が、ページ内のサイズ等の仕様欄にテキスト表示されるものを目指しています。

どなたかお力を貸していただけませんでしょうか?
よろしくお願いします。

Aベストアンサー

土日は簡単ですが、祝日はややこしいので配列に設定して比較する。
祝日の配列は、定期的にメンテナンスする。
という条件で作成してみました。

また、祝日も計算で求めるのであれば、以下が参考になると思います。
http://qiita.com/osamu_takeuchi/items/0623c8aceda43b57914c

これに、「長期連休」を追加すれば出来ると思います。



<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>sample</title>
<style type="text/css">
</style>
<script type="text/javascript">
function ShippingTime(){
// 祝日(定期的にメンテナンスする)
holDay = new Array(
"2015/12/23", // 天皇誕生日
"2016/1/1", // 元日
"2016/1/11", // 成人の日
"2016/2/11", // 建国記念の日
"2016/3/20", // 春分の日
"2016/3/21", // 振替休日
"2016/4/29", // 昭和の日
"2016/5/3", // 憲法記念日
"2016/5/4", // みどりの日
"2016/5/5", // こどもの日
"2016/7/18", // 海の日
"2016/9/19", // 敬老の日
"2016/9/22", // 秋分の日
"2016/10/10", // 体育の日
"2016/11/3", // 文化の日
"2016/11/23", // 勤労感謝の日
"2016/12/23" // 天皇誕生日
);
dayWek = new Array("日", "月", "火", "水", "木", "金", "土");

// 今日から4営業日先を求める
dt = new Date();
for(i = 0; i < 4; i++) {
dt.setTime(dt.getTime() + (1 * 24 * 3600 * 1000));
// 土日の処理
if( dt.getDay() == 6 || dt.getDay() == 0 ) i--;
// 祭日の処理
for(j = 0; j < holDay.length; j++) {
hd = holDay[j].split("/");
if(hd[0] == dt.getYear() + 1900 && hd[1] == dt.getMonth() + 1 && hd[2] == dt.getDate()) i--;
}
}

// 求めた日付を表示する
shpDt = "今日ご注文いただいた分は";
shpDt += dt.getYear() + 1900 + "年";
shpDt += dt.getMonth() + 1 + "月";
shpDt += dt.getDate() + "日(";
shpDt += dayWek[dt.getDay()] + ")";
shpDt += "発送予定です";
document.getElementById("ShpTime").innerText = shpDt;
}
</script>

</head>
<body onLoad="ShippingTime()">
<div id="ShpTime"></div>
</body>
</html>

土日は簡単ですが、祝日はややこしいので配列に設定して比較する。
祝日の配列は、定期的にメンテナンスする。
という条件で作成してみました。

また、祝日も計算で求めるのであれば、以下が参考になると思います。
http://qiita.com/osamu_takeuchi/items/0623c8aceda43b57914c

これに、「長期連休」を追加すれば出来ると思います。



<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>sample</title>
<style type="text/css">
</style>
<script type="text/javascript">
function Shi...続きを読む

Qjavaスクリプトでウィンドウを常に最前面に表示

ホームページを作成しているのですがメニューウィンドウ(menu.html)とアウトウィンドウ(out.html)を作成しました。
其処でメニューウィンドウ(menu.html)を常に一番上に表示するような技ってないでしょうか?(JAVAスクリプト等)

Aベストアンサー

セキュリティや環境などを無視して強引に実現するなら、
メニューウィンドウに以下のようなスクリプトを追加すればできると思います。

window.onblur = WinFocus;
function WinFocus() {
self.focus();
}

しかし、ANo.1の方も書かれているように、セキュリティだけじゃなく、そもそも「アウトウィンドウ」に触れなくなってしまいますよ。


人気Q&Aランキング

おすすめ情報