<INPUT type="button" value="start" onClick="Start()">を押した時の時分を取得して別の変数へ格納(情報の保持…これで出来るのでしょうか)。
<INPUT type="button" value="End" onClick="End()">を押した時の時分を取得して別の変数へ格納。(格納時にテキストボックスを使わずに表示したいです)
例えば)[START] ○○時 ○○分 //押した時
[ END ] //押さないと時分すら出ない
それぞれを実行した後に、別の<INPUT type="button" value="Calc" onClick="Calc()">を押し、格納された変数を使用して開始から終了までの経過時間を出すという物を作りたいです。
開始時間、終了時間を手入力で入れた場合の、元の正常に動くソースはあります。
現在は手入力で入れてあるので3つ目のCalc()ボタンを押せば出るのですが、1つ目2つ目のように取得して格納するといった方法が思いつきません。
手当たり次第作ってみてますが動いてくれません。
ご教授お願い致します。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
やっぱり・・・
訂正
//蛇足。ついでにもう一つ作る
var timer2 = new Timer (btn[3],lbl[3],btn[4],lbl[4],btn[5],lbl[5]);
document.addEventListener ('click', timer2, false);
No.1
- 回答日時:
こそっと2。
コメントも書いた。全角空白は半角に。エラー処理とかリセットとかはしてません。蛇足つき。たぶん「やっちまった」もあるかも。<!DOCTYPE html>
<meta charset="utf-8">
<title>タイマー?</title>
<body>
<h1>TImer</h1>
<h2>Timer1</h2>
<p><input type="button" value="Start">:<label></label>
<p><input type="button" value="End">:<label></label>
<p><input type="button" value="Calc">:<label></label>
<h2>Timer2</h2>
<p><input type="button" value="Start">:<label></label>
<p><input type="button" value="End">:<label></label>
<p><input type="button" value="Calc">:<label></label>
<script>
//まずその機能で使われるであろう変数を全部含んだ入れ物を作る
function Timer (startbtn, startview, endbtn, endview, calcbtn, calcview) {
this.startbtn = startbtn;
this.startview = startview;
this.endbtn = endbtn;
this.endview = endview;
this.calcbtn = calcbtn;
this.calcview = calcview;
}
//そういえば時間も格納しなければ。Timerに付け加える。
Timer.prototype.mstart = null;//スタート時間を記憶する
Timer.prototype.mend = null;//終わり
Timer.prototype.mcalc = null;//経過
//時分を表示する関数が必要だな
function disptime (time) {
return [
zp (time.getHours ()), '時 ',
zp (time.getMinutes ()), '分 ',
zp (time.getSeconds ()), '秒'
].join ('');
}
//ゼロパディグしない
function zp(n) {
return ('00' + n).slice (-2);
}
//ボタンが押されたときの処理を作る
function clickHandleEvent (event) {
var e = event.target;
var sa, d, tz;
switch (true) {
case this.startbtn == e ://スタート
this.mstart = new Date;
this.startview.textContent = disptime (this.mstart);
break;
case this.endbtn == e ://終わり
this.mend = new Date;
this.endview.textContent = disptime (this.mend);
break;
case this.calcbtn == e ://経過
var d = new Date;
tz = d.getTimezoneOffset () * 60 * 1000;
this.mcalc = new Date (this.mend - this.mstart + tz);
this.calcview.textContent = disptime (this.mcalc);
break;
}
}
//上(ボタンが押されたときの処理)の処理をTimerにつける
Timer.prototype.handleEvent = clickHandleEvent;
//これでオブジェクトは完成
//_______
//ここからはオブジェクトを使うための設定
//ボタンを集める
var btn = document.querySelectorAll ('input[type="button"]');
//ラベルを集める
var lbl = document.querySelectorAll ('label');
//Timerからあらたしいオブジェクトを作る
var timer1 = new Timer (btn[0],lbl[0],btn[1],lbl[1],btn[2],lbl[2]);
//documentにclickイベントとして登録する
document.addEventListener ('click', timer1, false);
//蛇足。ついでにもう一つ作る
var timer1 = new Timer (btn[3],lbl[3],btn[4],lbl[4],btn[5],lbl[5]);
document.addEventListener ('click', timer1, false);
</script>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- JavaScript コードレビューをお願いします。 1 2022/07/16 05:38
- JavaScript プログラムがうまく動きませんレビューお願いします 1 2022/07/10 05:08
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- JavaScript jsで質問です。 ボタンが二つ存在し、両方のボタンがクリックされたことをチェックしたいのですが、どの 4 2022/11/22 10:30
- JavaScript javascriptでテーブルに追加した項目のid追加してローカルストレージを操作したい 5 2023/01/01 15:52
- PHP PHP MySql ページング 2 2022/09/20 06:38
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
onchangeイベントを強制的に発...
-
テキストフィールド未入力の場...
-
ボタン押下しテキストエリアに...
-
javaScriptの変数をJavaの変数...
-
追加ボタンを押した際に ok ボ...
-
VBScriptで子画面へ配列のデー...
-
ボタンをクリックして文字を置...
-
クリックさせたいが、click()が...
-
ボタンかリンクをクリックする...
-
if構文
-
JavaScript Form OPTION value
-
vbsでフォーム入力ができません
-
小窓が残像を残して移動
-
ひとつのボタンでタイマーを動...
-
innerHTML内では改行は禁止?
-
BackSpaceしたい(QNo.2734284の...
-
プルダウンで選択したページに...
-
formのfileの値をhiddenでも持...
-
return trueとreturn falseの用...
-
プルダウン 項目が多いので先頭...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
onchangeイベントを強制的に発...
-
iOSのみダブルタップが必要
-
onclickが動作しない
-
追加ボタンを押した際に ok ボ...
-
ボタンかリンクをクリックする...
-
innerHTML内では改行は禁止?
-
クリックさせたいが、click()が...
-
javaScriptの変数をJavaの変数...
-
formのfileの値をhiddenでも持...
-
JavascriptでDOM-based XSSの発...
-
クリックでテーブル内の背景色...
-
VB.NETで<Input>タグ、<text...
-
開いた子ウィンドウにあるボタ...
-
jQueryで設定したイベントハン...
-
javascriptで作成されたテーブ...
-
HTMLのテキストボックスへのド...
-
テキストフィールド未入力の場...
-
JavaScriptのfileオブジェクト...
-
JSのボタンを複数う使うには
-
オンクリックで現在時刻の取得→...
おすすめ情報