質問編集履歴

3

より具体的に編集

2017/08/12 02:04

投稿

Foxy
Foxy

スコア43

test CHANGED
File without changes
test CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
 
6
6
 
7
- ver getupにはclockpickerによって入力された時間が「7:00」といったように入ります。
7
+ ver getupにはclockpickerによって入力された時間$(".form-control").val()が「7:00」といったように入ります。
8
8
 
9
9
 
10
10
 

2

質問の簡略化

2017/08/12 02:04

投稿

Foxy
Foxy

スコア43

test CHANGED
File without changes
test CHANGED
@@ -4,64 +4,20 @@
4
4
 
5
5
 
6
6
 
7
- 下ソースコードの$(".form-control").val()には「7:00」といったようにclockpickerによって入力された時間が入っておりvar getupに時間:」といった形で値が入ります。
7
+ ver getupにはclockpickerによって入力された時間が「7:00」といったように入ります。
8
8
 
9
9
 
10
10
 
11
- 説明が下手ですいません。説明に不備があればその都度追記します。
12
-
13
- ###詳細
14
-
15
- アラームアプリを制作する予定で、現在時刻と指定した時刻を秒数に変換し、その時差を求めてsetTimeoutを用いることによって指定時刻にアラームを起動&画面遷移させようと考えています。
16
-
17
-
18
-
19
- より楽な方法があればご教授頂けると幸いです。
20
-
21
11
  ###該当のソースコード
22
12
 
23
- ```ここに言語を入力
13
+ ```javascript
24
-
25
- //現在の時刻を秒数にする
26
-
27
- var now = new Date();
28
-
29
- var nowSecond = (now.getHours()*60*60 + now.getMinutes())*60 + now.getSeconds() ;
30
-
31
-
32
-
33
- //目標時刻を秒数にする
34
-
35
- /****************************************************************************/
36
14
 
37
15
  var getup = new Date($(".form-control").val());
38
16
 
39
17
  var setSecond = (getup.getHours()*60*60 + getup.getMinutes()*60);
40
18
 
41
- /****************************************************************************/
19
+ ```
42
20
 
43
-
21
+ ###問題点
44
22
 
45
- //あと何秒で目標時刻になるか、差を求める(秒)
46
-
47
- var difSecond = setSecond - nowSecond;
23
+ 上記のソースコードで実行すると、setSecondにはNaNという値が入りました。
48
-
49
-
50
-
51
- //マイナスならすでに 今日は目標時刻を過ぎているということなので1日加算する
52
-
53
- if( difSecond < 0 ) difSecond += 24*60*60; //1日の秒数を加算
54
-
55
-
56
-
57
- //時間後画面遷移
58
-
59
- alert("あと"+ difSecond + "秒で" + getup.getHours() + "時" + getup.getMinutes() + "分です");
60
-
61
-
62
-
63
- //秒数カウント後、画面遷移
64
-
65
- return setTimeout(document.querySelector('#navigator').pushPage('page2.html'), difSecond);
66
-
67
- ```

1

内容に不備

2017/08/12 01:59

投稿

Foxy
Foxy

スコア43

test CHANGED
File without changes
test CHANGED
@@ -62,6 +62,6 @@
62
62
 
63
63
  //秒数カウント後、画面遷移
64
64
 
65
- return setTimeout(document.querySelector('#navigator').pushPage('vrmode.html'), difSecond);
65
+ return setTimeout(document.querySelector('#navigator').pushPage('page2.html'), difSecond);
66
66
 
67
67
  ```