例えば、「OPENして○ヶ月と○日が経ちました」っていうような感じに表示したい場合、どういう風にすれば表示できるようになりますか?いろいろ検索してみたんですが、いまいちよくわかりませんでした。簡単に教えていただけないでしょうか?おねがいします!

A 回答 (2件)

お返事遅くなりすいません。


-○日となるのは引き算する時の大小判定が無いためでした。
そこで日付の引き算部分を以下のように変更してみましたので試してみて下さい。

//現在の日付から開設日付を引き何日経過したのかを取得する
if(StDay.getMonth()>=dtToday.getMonth()+1){
var strMonth = StDay.getMonth()-(dtToday.getMonth()+1);
}else{
var strMonth = (dtToday.getMonth()+1)-StDay.getMonth();

}
if(dtToday.getDate()>=StDay.getDate()){
var strDate = dtToday.getDate()-StDay.getDate();
}else{
var strDate = StDay.getDate()-dtToday.getDate();
}
    • good
    • 0

こんな感じでしょうか?



<SCRIPT>
var StrMsg = "";
var dtToday = new Date;//現在の日付を取得する。
var StDay = new Date(2001,3,1);//Date(年,月,日)開設した年月日を入れておく。

//現在の日付から開設日付を引き何日経過したのかを取得する
var strMonth = dtToday.getMonth()+1-StDay.getMonth();
var strDate = dtToday.getDate()-StDay.getDate();

//HTMLへと出力する
if(strMonth != 0){
StrMsg = StrMsg + strMonth+"ヶ月と";
}
if(Date != 0){
StrMsg = StrMsg + strDate+"日";
}
if(StrMsg.length != 0){
document.write("OPENして"+ StrMsg +"が経ちました<BR>");
}
</SCRIPT>

参考URL:http://www.openspc2.org/reibun/javascript/

この回答への補足

回答ありがとうございます。
上のだと、途中から○ヶ月と-○日になってしまうんですが、
これはどうにかなりますか?
無理でしょうか?
お手数ですが、もう一度教えていただけますか?

補足日時:2002/03/08 20:02
    • good
    • 0

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

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

Q「~○ヶ月○日」という表示方法 2

以前こちらで同じ質問をさせていただきました。
教えていただいた方にもう1度聞こうと思ったんですが
ここではそれはできないようなので、どなたか教えてください!

「HPを開設してから○ヶ月と○日が経ちました」
というような表示をしたいのです。
以前教えていただいた方法でうまく表示されていたのですが、
最近ちょっとくるってるんです。
本当は4ヶ月と22日(5/4現在)なんですが
5ヶ月と8日と表示されてしまいます。
なぜでしょうか?
いろいろ検索してまわったのですが、
どれも何日という表示方法で、○ヶ月というのは見つかりませんでした。
以前教えていただいたのは↓です。

<SCRIPT>
var StrMsg = "";
var dtToday = new Date;//現在の日付を取得する。
var StDay = new Date(2001,12,12);//Date(年,月,日)開設した年月日を入れておく。

//現在の日付から開設日付を引き何日経過したのかを取得する
if(StDay.getMonth()>=dtToday.getMonth()+1){
var strMonth = StDay.getMonth()-(dtToday.getMonth()+1);
}else{


var strMonth = (dtToday.getMonth()+1)-StDay.getMonth();

}
if(dtToday.getDate()>=StDay.getDate()){
var strDate = dtToday.getDate()-StDay.getDate();
}else{
var strDate = StDay.getDate()-dtToday.getDate();
}
//HTMLへと出力する
if(strMonth != 0){
StrMsg = StrMsg + strMonth+"ヶ月と";
}
if(Date != 0){
StrMsg = StrMsg + strDate+"日";
}
if(StrMsg.length != 0){
document.write("HPを開設してから"+ StrMsg +"が経ちました");
}</SCRIPT>

お願いします!!

以前こちらで同じ質問をさせていただきました。
教えていただいた方にもう1度聞こうと思ったんですが
ここではそれはできないようなので、どなたか教えてください!

「HPを開設してから○ヶ月と○日が経ちました」
というような表示をしたいのです。
以前教えていただいた方法でうまく表示されていたのですが、
最近ちょっとくるってるんです。
本当は4ヶ月と22日(5/4現在)なんですが
5ヶ月と8日と表示されてしまいます。
なぜでしょうか?
いろいろ検索してまわったのですが、
どれも何日とい...続きを読む

Aベストアンサー

strDate = "約"+(strDate + 31)

の部分を

var misoka= new Date
misoka.setTime(today.getTime()-today.getDate()*24*60*60*1000)
strDate = (strDate + misoka.getDate())

にして下さい.このコードでは,
「前月最終日までの日数」+「その日から今日までの日数」
として計算します.

Q○歳△ヶ月と×日を計算してくれるJavaScriptを教えてください。

今は「生後○日になりました」というカウントアップのJavaScriptを使用しています。1歳の誕生日を迎たので「○歳△ヶ月と×日になりました」というものに変えたいと思っています。

いくつかのJavaScriptのサイトを探してみましたが、今使用しているカウントアップは見つかりますが、今回変えたいと思っているものが見当たりません。

「○歳△ヶ月と×日になりました」というJavaScriptのソースを教えてください。

子供は2003年3月1日生まれです。よろしくお願いいたします。

Aベストアンサー

返信見ました。
「△ヶ月」の表示ですが、前掲のスクリプトでは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ある日付から○年○月○日目の計算

ウェブログを始めました。
記事の隣に配置されているメニューカラムとでも申しましょうか。
そこに、自分の好きなカテゴリーを設置できると最近知りました。

そこで、「2014年3月28日から、今日で○年○月○日」と表示させるようにしたいです。

現在、「○日」という表示は出来るようになったのですが(サンプルをこぴぺで…)
未来、桁数がすさまじいことになっていくので、年月日にしたいのですが

知識がないので、どなたか、例文をご存じでしたら教えて下さい。

Aベストアンサー

ちなみに#4例で、0年1月-1日後でよければ以下

<script>
var startDay = new Date(2014,0,31);// 1月31日
var endDay = new Date(2015,2,2);// 3月2日

function ddiff(s,e){
if(s > e) return false;
var y1=s.getFullYear(),m1=s.getMonth(),d1=s.getDate();
var y2=e.getFullYear(),m2=e.getMonth(),d2=e.getDate();
var y0=y2-y1,m0=m2-m1,d0=d2-d1;
y0-=(m1>m2 || (m1==m2 && d1>d2))?1:0;
m0=(12+m0-(d1>d2?1:0))%12;
d0+=d1>d2?(new Date(y2,m2,0)).getDate():0;
return y0+"/"+m0+"/"+d0;
}

document.write(ddiff(startDay,endDay));
</script>

ちなみに#4例で、0年1月-1日後でよければ以下

<script>
var startDay = new Date(2014,0,31);// 1月31日
var endDay = new Date(2015,2,2);// 3月2日

function ddiff(s,e){
if(s > e) return false;
var y1=s.getFullYear(),m1=s.getMonth(),d1=s.getDate();
var y2=e.getFullYear(),m2=e.getMonth(),d2=e.getDate();
var y0=y2-y1,m0=m2-m1,d0=d2-d1;
y0-=(m1>m2 || (m1==m2 && d1>d2))?1:0;
m0=(12+m0-(d1>d2?1:0))%12;
d0+=d1>d2?(new Date(y2,m2,0)).getDate():0;
return y0+"/"+m0+"/"+d0;...続きを読む

Qwindow.openでフルスクリーン表示

リンクは別ウインドウをフルスクリーンでスクロールバー非表示&ツールバー隠す(hidden)で開こうとしました。単純に、
window.open("a.htm","","fullscreen=yes,menubar=hidden,scrollbars=no");
でうまくいくと思ったのですが、うまくいきません。
解決法をご存知の方がいましたら、よろしくお願いします。
ちなみにブラウザは、IEを使用しています。

Aベストアンサー

これでどうでしょうか?
window.open("a.htm", "_blank", "fullscreen=yes");

参考URL:http://www.tagindex.com/javascript/window/open_option.html

Qwindows.open()で一番小さいウィンドウを表示

javascriptのwindow.openを使って、ものすごく小さい(見えないくらいの)ウィンドウを表示したいと考えています。

windows.open("xxxx","","width=1,height=1")と表示させたのですが、私が希望しているよりも大きかったので質問しました。これが限界なのでしょうか?

※次の処理へ移す為のダミーページとして
利用したいと考えており、できるだけユーザが気づかせたくないため

Aベストアンサー

left=30000,top=30000


人気Q&Aランキング

おすすめ情報