質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

2回答

3561閲覧

document.writeを使わず毎月○○日(複数)に指定したhtmlを表示したい

退会済みユーザー

退会済みユーザー

総合スコア0

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

1クリップ

投稿2017/01/26 15:43

編集2017/01/26 15:51

★実現したいこと
はじめまして
友人が経営する喫茶店のサイトを作っています。
htmlとcssは一生懸命勉強したのですが、jsがちんぷんかんぷんで助言をいただきたいです。

毎月5日、15日、25日ドリンク50円引きをやっていまして、
そのキャンペーンの日のみ表示させたい要素があります。

<div id="test"> <a herf="リンク"><img src="画像"></a> </div>

・HTML5でコーディングを行っているためdocument.writeは使わないとする
・毎月5日 15日 25日 のみ表示する
・当てはまらないなら何も表示しない、
あるいはcssでいうと、display:none;の状態。

詳細:
時間は端末の時刻、いずれも時間は00:00~23:59
あんまりこだわっていませんが…日付が変わる時間に表示したいです。
常に時間を監視?して表示切替をするのではなく、
あくまでもアクセスしてロードした時点での時間が当日なら表示という具合にしたいです。

つたない文章で申し訳ございませんが、先輩たちよろしくお願いいたします

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

こういう手段もあります。

HTML

1<div id="test"></div> 2<script> 3document.addEventListener( 'DOMContentLoaded', function() { 4 var d = new Date(); 5 // if ( d.getDate() % 5 ) { return; } // ミス 6 if ( d.getDate() % 10 !== 5 ) { return; } // こちらが正しい 7 document.getElementById( 'test' ).innerHTML = '<a herf="リンク"><img src="画像"></a>'; 8} ); 9</script> 10```**動くサンプル:**[https://jsfiddle.net/yfm3u1hr/1/](https://jsfiddle.net/yfm3u1hr/1/)

投稿2017/01/26 16:22

編集2017/01/26 16:36
kei344

総合スコア69407

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/01/26 16:29

if ( d.getDate() % 10 !== 5 ) { return; } ではありませんか?
退会済みユーザー

退会済みユーザー

2017/01/26 16:34

大変わかりやすいご回答をありがとうございます。 document.writeの代わりにinnerhtmlが代替になると聞いていたのでご回答いただけてうれしかったです。
kei344

2017/01/26 16:38 編集

To: Kosuke_Shibuyaさん すみません、そうです。ご指摘ありがとうございます。 回答も修正しておきます。 To: ran_rin_ronさん すいません、修正版を使ってください。
guest

0

JavaScript

1var date = new Date(), 2 day = date.getDate(); 3 4document.getElementById('test').style.display = (day%10 == 5)? block : none;

投稿2017/01/26 16:06

編集2017/01/26 16:17
NS-DOS

総合スコア110

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問