下記サイトを参照して、
「チェックボックスのON / OFFで画像を表示する」
「全てのチェックボックスのON / OFFを切り替える」
を組み合わせて、
「全てのチェックボックスのON / OFFを切り替えて画像の一括表示」をしたいのですが、全てのチェックボックスのON / OFFの切り替えはできるのですが、それに伴って画像の表示・非表示までは反応しませんでした。各チェックボックスのON / OFFでの画像の表示・非表示は可能です。
http://iswebmag.hp.infoseek.co.jp/sample163.html
http://iswebmag.hp.infoseek.co.jp/sample164.html
▼htmlソースです。
<FORM name="f1">
<INPUT type=checkbox name="f1" onClick="show(0,'img01')">朝焼に輝く星<BR>
<INPUT type=checkbox name="f1" onClick="show(1,'img02')">木立の隙間から<BR>
<INPUT type=checkbox name="f1" onClick="show(2,'img03')">夜明け<BR>
<INPUT type=checkbox name="f1" onClick="show(3,'img04')">自転を感じる<BR>
<INPUT type=checkbox name="f1" onClick="show(4,'img05')">昼の星空<BR>
<INPUT type=checkbox name="f1" onClick="show(5,'img06')">砂丘の月<BR>
<INPUT type=checkbox name="f1" onClick="show(6,'img07')">月の軌跡<BR>
<INPUT type=checkbox name="f1" onClick="show(7,'img08')">彗星の飛来<BR>
<INPUT type=checkbox name="f1" onClick="show(8,'img09')">彗星
<BR>
<INPUT type=button value="全てOn" onClick="all_on(this.form.f1)">
<INPUT type=button value="全てOff" onClick="all_off(this.form.f1)">
</FORM>
▼チェックボックスのON / OFFで画像を表示するJavaScript
<SCRIPT language="JavaScript">
<!--
function show(c,img){
if(document.f1.elements[c].checked == true){
document.getElementById(img).style.width=200;
} else {
document.getElementById(img).style.width=0;
}
}
// -->
</SCRIPT>
▼全てのチェックボックスのON / OFFを切り替えるJavaScript
<SCRIPT language="JavaScript">
<!--
function all_on(chk){
for (i = 0; i < chk.length; i++) {
chk[i].checked = true;
}
}
function all_off(chk){
for (i = 0; i < chk.length; i++) {
chk[i].checked = false;
}
}
// -->
</SCRIPT>
No.5ベストアンサー
- 回答日時:
あれこれ、なおしてたら、こうなっちゃった~!
すくりぷとがどうであれ、だいじなのは、てんたいのしゃしんだじょ!
いいしゃしん、いっぱいとってね。
ばぶぅ。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="jp">
<head>
<title>天体写真集</title>
<style type="text/css">
h1 {margin-bottom:2ex; }
.L { float:left; width:200px; background-color:#fee; }
#PhotoList { margin-left:200px; }
#PhotoList img { width:150px; height:150px; }
</style>
</head>
<body>
<h1>天体写真集</h1>
<div class="L">
<FORM action="#" name="f1">
<ol>
<li><input type="checkbox" name="c1" checked>朝焼に輝く星</li>
<li><input type="checkbox" name="c1" checked>木立の隙間から</li>
<li><input type="checkbox" name="c1" checked>夜明け</li>
<li><input type="checkbox" name="c1" checked>自転を感じる</li>
<li><input type="checkbox" name="c1" checked>昼の星空</li>
<li><input type="checkbox" name="c1" checked>砂丘の月</li>
<li><input type="checkbox" name="c1" checked>月の軌跡</li>
<li><input type="checkbox" name="c1" checked>彗星の飛来</li>
<li><input type="checkbox" name="c1" checked>彗星</li>
<li><input type="button" value="全てOn"><input type="button" value="全てOff"></li>
</ol>
</FORM>
</div>
<div id="PhotoList">
<img src="photo01.jpg" alt="朝焼に輝く星">
<img src="photo02.jpg" alt="木立の隙間から">
<img src="photo03.jpg" alt="夜明け">
<img src="photo04.jpg" alt="自転を感じる">
<img src="photo05.jpg" alt="昼の星空">
<img src="photo06.jpg" alt="砂丘の月">
<img src="photo07.jpg" alt="月の軌跡">
<img src="photo08.jpg" alt="彗星の飛来">
<img src="photo09.jpg" alt="彗星">
</div>
<script type="text/javascript">
document.onclick = function (evt) {
var e = evt ? evt.target: event.srcElement;
var n, t,p,c=0;
if ('INPUT' == e.nodeName) {
if ('c1' === e.name) {
p = getParent(e, 'nodeName', 'LI');
n = childCount(p, 'nodeName', 'LI');
t = document.getElementById('PhotoList').getElementsByTagName('IMG')[n];
t.style.visibility = e.checked ? 'visible': 'hidden';
}
if ('全てOn' == e.value) {
p = document.getElementsByName('c1');
t = document.getElementById('PhotoList').getElementsByTagName('IMG');
while (n = p[c]) {
n.checked = true;
t[c++].style.visibility = 'visible';
}
}
if ('全てOff' == e.value) {
p = document.getElementsByName('c1');
t = document.getElementById('PhotoList').getElementsByTagName('IMG');
while (n = p[c]) {
n.checked = false;
t[c++].style.visibility = 'hidden';
}
}
}
};
function getParent (node, type, val) {
return node ? (val == node[type]) ? node: arguments.callee(node.parentNode, type, val): null;
}
function childCount (node, type, val) {
var c = 0; while (node = node.previousSibling) if (node[type] == val) c++; return c;
}
</script>
No.4
- 回答日時:
> 以下では動かないのですが・・これではだめなのでしょうか
JavaScriptの部分何が変わったの?
何も変わっていない様に見えるけど。
showを呼ばないと画像処理は走らないことはわかっているのよね?
呼ぶように何も変わっていないじゃない。
ぶっちゃけ#2さんの言うとおりにやればできるはずよ。
No.3
- 回答日時:
>> 単純に関数showで画像の切り替えのスクリプトを追加すれば良いのでしょうか?
まずはやってみる。
質問はそれから。
この回答への補足
すみません。いろいろやってみました・・・。
画像をデフォルト表示に変更しました。それはできたのですが・・・。
▼以下では動かないのですが・・これではだめなのでしょうか?
<!--
function show(c,img){
if(document.f1.elements[c].checked == true){
document.getElementById(img).style.width=200;
} else {
document.getElementById(img).style.width=0;
}
}
function all_on(chk){
for (i = 0; i < chk.length; i++) {
chk[i].checked = true;
}
}
function all_off(chk){
for (i = 0; i < chk.length; i++) {
chk[i].checked = false;
}
}
// -->
<HTML>
<HEAD>
<TITLE>天体写真集</TITLE>
<script language="JavaScript" src="js/all.js"></script>
<script language="JavaScript" src="js/basic.js"></script>
</HEAD>
<BODY>
<H1>天体写真集</H1>
<BR>
<TABLE width=610 align=right border=0 cellspacing=0 celpadding=0>
<TR><TD width=610>
<IMG src="photo01.jpg" id="img01" style="width:200px">
<IMG src="photo02.jpg" id="img02" style="width:200px">
<IMG src="photo03.jpg" id="img03" style="width:200px">
<IMG src="photo04.jpg" id="img04" style="width:200px">
<IMG src="photo05.jpg" id="img05" style="width:200px">
<IMG src="photo06.jpg" id="img06" style="width:200px">
<IMG src="photo07.jpg" id="img07" style="width:200px">
<IMG src="photo08.jpg" id="img08" style="width:200px">
<IMG src="photo09.jpg" id="img09" style="width:200px">
</TD></TR>
</TABLE>
<FORM name="f1">
<INPUT type=checkbox name="c1" onClick="show(0,'img01')" checked>朝焼に輝く星<BR>
<INPUT type=checkbox name="c1" onClick="show(1,'img02')" checked>木立の隙間から<BR>
<INPUT type=checkbox name="c1" onClick="show(2,'img03')" checked>夜明け<BR>
<INPUT type=checkbox name="c1" onClick="show(3,'img04')" checked>自転を感じる<BR>
<INPUT type=checkbox name="c1" onClick="show(4,'img05')" checked>昼の星空<BR>
<INPUT type=checkbox name="c1" onClick="show(5,'img06')" checked>砂丘の月<BR>
<INPUT type=checkbox name="c1" onClick="show(6,'img07')" checked>月の軌跡<BR>
<INPUT type=checkbox name="c1" onClick="show(7,'img08')" checked>彗星の飛来<BR>
<INPUT type=checkbox name="c1" onClick="show(8,'img09')" checked>彗星<BR>
<INPUT type=button value="全てOn" onClick="all_on(this.form.c1)">
<INPUT type=button value="全てOff" onClick="all_off(this.form.c1)">
</FORM>
</BODY>
</HTML>
No.1
- 回答日時:
関数showで画像の切り替えを行っている、
これは判っているわね?
でも、
チェックボックスをクリックするときにしか呼び出していないわね。
「▼全てのチェックボックスのON / OFFを切り替えるJavaScript」
のときにも呼び出してあげないとダメよ。
この回答への補足
ありがとうございます!
「全てのチェックボックスのON / OFFを切り替えるJavaScript」に
呼び出しを組み込む場合は、
単純に関数showで画像の切り替えのスクリプトを追加すれば良いのでしょうか?
JavaScriptの知識が乏しくて・・すみません・・。
宜しくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
複数の要素へ appendchild でき...
-
fontsize.jsでhtmlの大中小の設...
-
MAX関数を使ってからLEFT JOIN...
-
javascriptテキストBOX色を元に...
-
JSPでの画像ファイル表示
-
eclipseでcssを使うためには?
-
背景色を透明化
-
JavaScriptに関する質問です
-
jquery ドロップダウンメニュー...
-
画像をフォルダに入れれば表示...
-
ページ読み込み完了の3秒後にリ...
-
オープニングにアニメーション...
-
読み込んだQRコードをフォーム...
-
JavaScript スライドの画像にリ...
-
画像拡大スクリプトのソース内...
-
条件分岐でキーが入力されてい...
-
CSSでdivのheightを動的に
-
【jQuery】遅延実行(タイムラ...
-
アンケートサイトを作りたい!...
-
画面が真っ白になるのはどうして?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Slick.jsのオプションrtlについて
-
fontsize.jsでhtmlの大中小の設...
-
横並びの画像を3枚時間差でフェ...
-
javascript 神経衰弱 表に返...
-
アコーディオンメニューが開い...
-
jcarouselliteについてです。
-
複数の要素へ appendchild でき...
-
キャラクターがぴょこんと飛び...
-
【jQuery】2分割レイアウトで、...
-
jQuery bxSlider でのアニメー...
-
Dreamweaver上とデバイスプレビ...
-
オンマウスで画像変更、クリッ...
-
複数のJavascript の組込み方に...
-
Javascriptを使用したスライド...
-
jCarousel Lite スタート位置
-
CSSでマウスオーバーした画像を...
-
ドロップダウンメニューの方法...
-
文字サイズ変更のjavascriptが...
-
Javaスクリプトで画像を縦にス...
-
Jqueryを使ったHTMLの操作
おすすめ情報