以前、時計を一秒一秒、新しい絵を読み込んで
バー表示型の時計を作ろうとしていた者ですが
なんとか、1つの画像を連続表示させて
一本のバーにしていくスクリプトを
下記のように作りました
そうしたところ、手動で更新をすると、うまく動作するのですが
自動で更新していこうと思いsetTimeout()を入れたのですが
うまく動作してくれません。どのようにしたらよいのでしょうか
<html>
<head>
<script language="JavaScript1.1">
<!--
function timesec()
{
var now = new Date()
var s = now.getSeconds()
var x = 60-s
for(gj=0;gj<x;gj++)
{
var no = gj+1*x
document.write("<img src='sec_1.gif' NAME='Name"+no+"'>")
}
}
//-->
</script>
</head>
<body>
<script language="JavaScript1.1">
<!--
timesec()
---->
</script>
</body>
</html>
No.10
- 回答日時:
ε- (^、^; ふぅ
間に合ったみたいですね。
ちょっと手直ししました。
<html>
<head>
<script language="JavaScript">
<!--
var pp;
var gj,x,s,no;
function timesec(){
var now = new Date();
s = now.getSeconds();
x = 60-s;
if(gj<60){
no = gj;
pp.innerHTML += "<img src='sec_1.gif' NAME='Name" + no + "'>";
gj++;
}else{
pp.innerHTML ="";
gj=0;
}
setTimeout("timesec()",1000);
}
function window_onload() {
pp = document.getElementById("pp");
var now = new Date();
s = now.getSeconds();
x = 60-s;
//最初に現在秒数、画像を表示してしまう。
for(gj=0;gj<s;gj++)
no = gj;
pp.innerHTML += "<img src='sec_1.gif' NAME='Name" + no + "'>";
timesec();
}
//-->
</SCRIPT>
</head>
<body LANGUAGE=javascript onload="return window_onload()">
<P id=pp></p>
</body>
</html>
no = gj+1*x;
ここを
no = gj;
にしたけどよかったのかな?
返事が遅くなり、申し訳ございません
イロイロとありがとうございました
最初に現在の秒数を読み込んで
後は一秒ごとの更新でカウントしているのですね
自分では、毎回、現在の秒数を読み込もうとしていました。
そうすると、現在の分数や時数もできると思ったので
でも、このやりかたでも、更新秒数を分単位にしたり
時単位にすることで、できそうですね。
重ね重ね、ありがとうございました
No.9ベストアンサー
- 回答日時:
>現時刻秒数ぶんの長さのバー
リアルタイムに出すの?
<html>
<head>
<script language="JavaScript">
<!--
var pp;
var gj=0;
function timesec(){
var now = new Date();
var s = now.getSeconds();
var x = s;
var no;
if(gj<60){
no = gj+1*x;
pp.innerHTML += "<img src='sec_1.gif' NAME='Name" + no + "'>";
gj++;
setTimeout("timesec()",1000);
return;
}
pp.innerHTML ="";
gj=0;
setTimeout("timesec()",1000);
}
function window_onload() {
pp = document.getElementById("pp");
var now = new Date();
var s = now.getSeconds();
var x = s;
var no;
//最初に現在秒数を表示してしまう。
for(i=0;i<x;i++)
pp.innerHTML += "<img src='sec_1.gif' NAME='Name" + no + "'>";
gj=x;
timesec();
}
//-->
</SCRIPT>
</head>
<body LANGUAGE=javascript onload="return window_onload()">
<P id=pp></p>
</body>
</html>
間に合うかな?
No.8
- 回答日時:
var now = new Date();
var s = now.getSeconds();
var x = 60-s;
を
function timesec()
の外に出せばいいと思います
var pp;
var gj=0;
function timesec_(){
↓
var pp;
var gj=0;
var now = new Date();
var s = now.getSeconds();
var x = 60-s;
var no;
function timesec_(){
こう?
この回答への補足
お返事が遅れ、申し訳ありません
どうも、ありがとうございました
やはり、現時刻秒数ぶんの長さのバーを表示させるのは
難しいようです
地道に自分で考えていこうと思います
No.6
- 回答日時:
これはどうでしょう。
違う?
<html>
<head>
<script language="JavaScript">
<!--
var pp;
var gj=0;
function timesec_(){
var now = new Date();
var s = now.getSeconds();
var x = 60-s;
var no;
if(gj<x){
no = gj+1*x;
pp.innerHTML += "<img src='sec_1.gif' NAME='Name" + no + "'>";
gj++;
setTimeout("timesec_()",1000);
}
}
function window_onload() {
pp = document.getElementById("pp");
timesec_();
}
//-->
</SCRIPT>
</head>
<body LANGUAGE=javascript onload="return window_onload()">
<P id=pp></p>
</body>
</html>
この回答への補足
一度、お礼を書き込んでしまったのですが
自分で、なんとか昇華させようと思ったのですが
どうも、うまくいかないです。
なんとか、現秒数をうまく反映できないでしょうか
本当に、お暇な時で構いません。
No.4
- 回答日時:
<body>
<P id=pp></P>
として
document.write("<img src='sec_1.gif' NAME='Name"+no+"'>")
ここを
pp.innerHTML = "<img src='sec_1.gif' NAME='Name"+no+"'>";
こんな感じにするといいです。(IE専用)
NN7(6?)では
var pp = document.getElementById("pp");
これが必要です。
No.3
- 回答日時:
setTimeout()でtimesec()を1秒間隔で呼び出したとしても、
一度目の呼び出しはできても二度目でエラーになるはずです。
なぜかというと、
一度目の呼び出しのときに、document.writeで新しいページ
として書き込まれ(つまり、ページのソースがimgタグだけ)
になっちゃうからです。
画像を2種類用意し、はじめから60個並べといて
関数が呼び出されたときに画像を入れ替えるとか、
そんなふうなやり方に変えたほうがいいような気がします。
No.2
- 回答日時:
なんとなくなんですけど、
timesec()
が呼び出される度に
document.write("<img src='sec_1.gif' NAME='Name"+no+"'>")
が実行されて
行が増えていっているの?
こういうのは
innerHTML 使うといいと思うけど
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- JavaScript GoogleChart 階層ごとのブロックの長さを個別に設定したい 1 2022/07/06 14:27
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- JavaScript javascriptで変数を組み込みたい 2 2023/01/13 09:52
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- JavaScript html5に変えるとスライドショーが消えてしまった。 3 2022/03/26 19:53
- JavaScript 以前の質問だと、どの条件でも配列が表示されてしまいます。 1 2022/07/09 11:40
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
javascriptでiframeのURL変更は?
-
C#で、ContextMenuStripに動的...
-
var_dumpのdump意味はを知りた...
-
C#OpenCv V4にのエラーに関する...
-
ASP.NETのコントロールの値をJa...
-
GASでundefinedエラーが出ます
-
Javascriptで指定した位置の文...
-
javascriptで同文字の出現回数...
-
google apps scriptの終了のさせ方
-
GASのエラー「undefined からプ...
-
毎日日付の変わるタイミングを...
-
jsによって検索プルダウン、都...
-
C# 演算 奇数と偶数 表現の仕方
-
AM,PMの時間表示について
-
シンプルなweb版スタンプラリー...
-
gas スプレッドシートがアクテ...
-
JavaScript window.openで開く...
-
同じIDで定義した要素の配列を...
-
ボタンをクリックすると数が増...
-
jspからjavascriptの変数引継ぎ
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C#で、ContextMenuStripに動的...
-
ASP.NET MVCでObjectをjsに渡す
-
ローカルにあるファイルを検索...
-
C#OpenCv V4にのエラーに関する...
-
google apps scriptの終了のさせ方
-
イベントが初めの一回しか起き...
-
ジェネレーターの作り方
-
JavaScriptで文字列の特定文字...
-
javascriptでテーブルに追加し...
-
なぜmatchメソッドがエラーにな...
-
ASP.NETのコントロールの値をJa...
-
javascriptでiframeのURL変更は?
-
翌月を取得するGASが分かりません
-
1日1回だけ引けるjavascriptお...
-
商品コードを入力で、商品名、...
-
JavaScriptで平日のみをカウン...
-
jsによって検索プルダウン、都...
-
C# 演算 奇数と偶数 表現の仕方
-
GASでundefinedエラーが出ます
-
gas スプレッドシートがアクテ...
おすすめ情報
