今は「生後○日になりました」というカウントアップのJavaScriptを使用しています。1歳の誕生日を迎たので「○歳△ヶ月と×日になりました」というものに変えたいと思っています。
いくつかのJavaScriptのサイトを探してみましたが、今使用しているカウントアップは見つかりますが、今回変えたいと思っているものが見当たりません。
「○歳△ヶ月と×日になりました」というJavaScriptのソースを教えてください。
子供は2003年3月1日生まれです。よろしくお願いいたします。
No.1
- 回答日時:
この回答への補足
ありがとうございます。教えていただいたサイトを覗いてみました。
確かに私の希望するものはあるのですが、生まれた年月日を入力して計算するものでした。私が希望しているものは常にページの片隅に「○歳△ヶ月と×日になりました」と表示しておけるものなんです。
たぶん、教えていただいたサイトに載っているものをいじればできるとは思いますが、そこまでの知識は持っていないんです…。
No.2
- 回答日時:
<script language="JavaScript"><!--
function mySet(){
myNow = new Date();
myBirth = new Date(2003, (3-1), 1);
myMsec = myNow.getTime()-myBirth.getTime();
myDay = Math.floor(myMsec / (1000*60*60*24));
document.myForm.myFormMes.value
= "生まれてから" + (myDay+1) + "日目になります";
}
// --></script>
で、良いのではないでしょうか?
No.3
- 回答日時:
なんか、面白そうなので、私の方からも一つ・・。
但し、全く自信なし。
う~ん・・なんか違う気がするなー。
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=shift_jis">
<title>誕生時カウントアップ サンプル</title>
<!-- *** ここから ***-->
<script type="text/javascript">
<!--
BirthCount=new Date();
YearA=BirthCount.getFullYear()-2004;
YearB=BirthCount.getFullYear()-2003;
Month=BirthCount.getMonth()+1;
Day=BirthCount.getDate();
//-->
</script>
<!-- *** ここまでをHEADタグ内に入れます *** -->
</head>
<body>
<!-- $$$ ここから $$$ -->
<script type="text/javascript">
<!--
if(Month>=3){
document.write("今日で",YearB,"歳"); /* ←その年の誕生日前の年表示と文字列 */
}
else if(Month<3){
document.write("今日で",YearA,"歳"); /* ←その年の誕生日後の年表示と文字列 */
}
if(Month==12){
document.write("9"); /* ←表示される月 */
}
else if(Month==11){
document.write("8"); /* ←表示される月 */
}
else if(Month==10){
document.write("7"); /* ←表示される月 */
}
else if(Month==9){
document.write("6"); /* ←表示される月 */
}
else if(Month==8){
document.write("5"); /* ←表示される月 */
}
else if(Month==7){
document.write("4"); /* ←表示される月 */
}
else if(Month==6){
document.write("3"); /* ←表示される月 */
}
else if(Month==5){
document.write("2"); /* ←表示される月 */
}
else if(Month==4){
document.write("1"); /* ←表示される月 */
}
else if(Month==3){
document.write("0"); /* ←表示される月 */
}
else if(Month==2){
document.write("11"); /* ←表示される月 */
}
else if(Month<=1){
document.write("10"); /* ←表示される月 */
}
document.write("ヶ月と",Day,"日です"); /* ←表示される日と文字列 */
//-->
</script>
<!-- $$$ ここまでをBODYタグ内の表示させたい場所に入れます $$$ -->
</body>
</html>
もっと、綺麗にコンパクトに出来ますが、それ以前にこれでku_fullさんが求めているような表示をされるかですね。
PC内のシステムの年月日を色々と変えて、動作チェックしてみて下さい。
この回答への補足
できました!!ありがとうございます。
もっと綺麗ににコンパクトにするとどうなるのでしょうか??とても気になります。ぜひ教えてください。
No.4
- 回答日時:
日齢の計算に少々難しいところがあるので、これが正確な値を示せているかどうかについての検証がまだ不十分なところがあるとは思いますが、とりあえず以下のようなソースではいかがでしょうか。
<html>
<head>
<title></title>
<script type="text/javascript">
<!--
now=new Date();
birth=new Date("mar 1, 2003 00:00:00"); // ←誕生日を設定
ny=now.getYear();
by=birth.getYear();
ageY=ny-by;
nm=now.getMonth();
bm=birth.getMonth();
ageM=nm-bm;
nd=now.getDate();
bd=birth.getDate();
ageD=nd-bd;
if (ageD<0){
ageM--;
if (nm==0 || nm==2 || nm==4 || nm==6 || nm==7 || nm==9 || nm==11){
ageD+=31;
}
else if(nm==1){
if (ny/4==Math.floor(ny/4)){ ageD+=29;}
else { ageD+=28;}
}
else { ageD+=30;}
}
if (ageM<0){ ageY--; ageM+=12;}
age=ageY+"歳";
if (ageM!=0){ age+=ageM+"ヶ月";}
if (ageD!=0){ age+="と"+ageD+"日";}
// -->
</script>
</head>
<body>
<script type="text/javascript"><!--
document.write("○○は"+age+"になりました。");
//--></script>
</body>
</html>
見当違い・不具合がありましたら、ごめんなさい。
No.5ベストアンサー
- 回答日時:
返信見ました。
「△ヶ月」の表示ですが、前掲のスクリプトでは0になる単位の表示(0ヶ月、0日)を排除するように組んであります。 その結果として、今月は生まれ月にあたり0ヶ月となるため、今月分では表示されないようになっています。
3月以外の月では正常に表示されると思います。 試しに、
nm=now.getMonth();
となっている行の前に
now.setMonth(3);
という行を入れて試してみて下さい。 こうすると、現在時刻を4月にセットしなおすことができるので、4月に表示される内容をチェックすることができます。
もし、現状で1歳0ヶ月と13日というような表示にしたい場合は、
age=ageY+"歳";
if (ageM!=0){ age+=ageM+"ヶ月";}
if (ageD!=0){ age+="と"+ageD+"日";}
この部分を、
age=ageY+"歳"+ageM+"ヶ月と"+ageD+"日";
こちらの記述に置き換えて下さい。
参考になれば…
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript Q&Aの掲示板を作成していてヤフー知恵袋やgoo質問のように質問ごとにURLを生成したい 5 2023/08/04 01:22
- Instagram HTML5の廃止とJavaScript 2 2022/04/13 21:05
- その他(プログラミング・Web制作) プログラミング 処理速度 1 2022/11/25 11:05
- その他(コンピューター・テクノロジー) 4勤2休のシフト作成 1 2022/12/15 15:38
- 誕生日・記念日・お祝い 誕生日とクリスマスの近い彼氏のプレゼントについて教えてください 彼の誕生日は12月の23日で付き合っ 1 2022/11/25 13:01
- JavaScript JavaScriptのif文について 3 2022/07/19 10:35
- 恋愛・人間関係トーク 男性心理を教えてください!!! 私は18歳の女子高生です。 3ヶ月前に付き合っていた彼氏がいます。 1 2022/11/01 02:07
- 誕生日・記念日・お祝い 誕生日とクリスマス400近い彼氏のプレゼントについて教えてください 彼の誕生日は12月の23日で付き 4 2022/11/25 08:49
- JavaScript javaScriptで画面に値を入れるには 1 2022/08/14 12:27
- Excel(エクセル) 現時点の年齢を算出して、その年齢と一致したセルを色付けしたい。 4 2022/06/23 17:49
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
なぜ、ジャバスクリプトが表示...
-
htmlの中に記述している画像フ...
-
【JavaScript】実体参照符号化...
-
window.openでタイトル名の指定
-
ホームページに日付を自動更新...
-
iframe内に特定の文字列がある...
-
関数でy=g(x)のgとは何の略です...
-
C#テキストボックスの文字を配...
-
同じIDで定義した要素の配列を...
-
アクセス時からのカウントダウ...
-
二次元配列を使って順位をだす...
-
pdfに丸秘などのスタンプを...
-
bt_melter.jsをサイトの一部の...
-
javaScriptのコードの修正をお...
-
ASP+アクセスでのSQLコメントに...
-
JavaScript window.openで開く...
-
C#OpenCv V4にのエラーに関する...
-
gas スプレッドシートがアクテ...
-
MFCのキャプション変更
-
船のゲームを作っているのです...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
window.openでタイトル名の指定
-
ホームページに日付を自動更新...
-
○歳△ヶ月と×日を計算してくれる...
-
文字列を点滅させたい
-
なぜ、ジャバスクリプトが表示...
-
今日の月と日付の1週間後や3日...
-
JS、document.write出力位置設定
-
iframe内に特定の文字列がある...
-
自動ポップアップで画像を表示...
-
テキストボックスに入力された...
-
innerHTMLにて設定した情報を再...
-
document.open()の意味とは
-
ジャバスクリプトで空白(スペー...
-
Java Scriptのメソッドについて
-
document.clear()の使い方について
-
ウェブ上にキーボードを作りた...
-
document.writeで画面が消える
-
「分」単位で加算(減算)したい。
-
java カレンダーの日付指定で...
-
現在の日付から、1ヶ月前にす...
おすすめ情報