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

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

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

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

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

解決済

2回答

2405閲覧

div要素に背景色を追加したいのですが方法を教えてください

YamamotoAtsushi

総合スコア17

JavaScript

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

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2017/04/16 23:08

###前提・実現したいこと
javascript若しくはjQueryにて下記コードで
チェックボックスにチェックをしたら<div>要素の背景色に
色を薄く塗りたい。
CSSでチェックボックスの画像を変えるところまではいけたのですが、
どうしても背景色が変わりません。
宜しくお願い致します。

###発生している問題・エラーメッセージ

背景色がつかない.htmlだけでみると背景色は
チェックボックスのみについている。

###該当のソースコード(html,css,javascript)
【html】

<!doctype html> <html> <head> <meta charset="utf-8"> <link href="style.css" rel="stylesheet" type="text/css"> <script> function chebg(chkID){
Myid=document.getElementById(chkID); if(Myid.checked == true){ Myid.parentNode.style.backgroundColor = '#C6E5FF'; }else { Myid.parentNode.style.backgroundColor = '#FFFFFF'; } } </script>
</head> <body> <div class="chkId"> <label for="c_box1"> <input type="checkbox" id ="c_box1" onclick="chebg('c_box1')"/> <span class="image"></span> <p id="font">チェックボックス</p></label> </div> </body> </html>

【style】
@charset "utf-8";
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
outline: 0;
font-size: 100%;
vertical-align: baseline;
background: transparent;
}
body {
line-height: 1.1em;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
display: block;
}
nav ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
content: '';
content: none;
}
a {
margin: 0;
padding: 0;
font-size: 100%;
vertical-align: baseline;
background: transparent;
text-decoration: none;
}
change colours to suit your needs ins {
background-color:#ff9;
color:#000;
text-decoration:none;
}
change colours to suit your needs mark {
background-color:#ff9;
color:#000;
font-style:italic;
font-weight:bold;
}
del {
text-decoration: line-through;
}
abbr[title], dfn[title] {
border-bottom: 1px dotted;
cursor: help;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
/* change border colour to suit your needs
/
hr {
display: block;
height: 1px;
border: 0;
border-top: 1px solid #cccccc;
margin: 1em 0;
padding: 0;
}
input, select {
vertical-align: middle;
}
/
--------------------------- reset ここまで ---------------------------- */

section, aiticle, div, header, footer, nav {
display: block;
}
body {
font-size: 100%;
color: black;
font-weight: normal;
font-family: Verdana, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
vertical-align: baseline;
background: white;
}

.chkId {
width: 600px;
height: 100px;
margin-left: auto;
margin-right: auto;
margin-top: 100px;
border:1px solid #CCC;padding:10px;border-radius:10px;
}

#font {
display: block;
font-size: 18px;
width:145px;
height:20px;
margin-top: 43px;
margin-left: 20px;
float:left;
}

label{
position: relative;
margin-left: 220px;
width:130px;
height:60px;
}
label input{
display: none;
}
label .image{
position: absolute;
left: 0;
top:1.2em;
display: block;
background: url(buttonOff.png) no-repeat 0 0;
width: 130px;
height: 60px;
}

label input:checked + .image{
background:url(buttonOn.png) no-repeat 0 0;
}

###試したこと
Myid.parentNode.style.backgroundColor = '#C6E5FF';
のMyid.parentNode.部分
chiid1=document.getElementById(".chkId");として
chiid1.style.backgroundColor = '#C6E5FF';
としても出来ませんでした。
よろしくお願い致します。

*jQueryでも大丈夫です。お願い致します。

###補足情報(言語/FW/ツール等のバージョンなど)
より詳細な情報

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

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

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

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

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

kei344

2017/04/17 00:11

質問文のコードはそれぞれコードブロックで囲んでいただけませんか? ```(バッククオート3つ)で囲み、前後に改行をいれるか、コードを選択して「<code>」ボタンを押すとコードブロックになります。
guest

回答2

0

getElementByIdなので、クラスからは取れません。

いちばん楽なのは、document.querySelectorとすることで、指定されたセレクタでエレメントを取ってくることができます。

投稿2017/04/16 23:10

maisumakun

総合スコア145121

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

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

YamamotoAtsushi

2017/04/17 05:48

迅速に回答して頂き有難うございます。 早速訂正してみたいと思います。
guest

0

ベストアンサー

こうでしょうか?

javascript

1$(function(){ 2 $('#c_box1').on('click',function(){ 3 $(this).parents('.chkId').css('background-Color',$('#c_box1').prop('checked')?'#C6E5FF':'#FFFFFF'); 4 }); 5}); 6

投稿2017/04/17 05:15

yambejp

総合スコア114574

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

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

YamamotoAtsushi

2017/04/17 05:49

コードを示して頂きまして有難うございます。 迅速な回答有難うございます。 訂正してみたいと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問