menu
menu

JavaScriptでブロック要素の表示非表示 | Webデザインラボ

キーワード検索

12月のアクセストップ10

  1. ( 2↑) CSSだけでドロップダウンメニュー
  2. ( 1↓) スマホサイトの作成・基本編
  3. ( 3-) CSSだけでサイズ可変・スマホ対応のアコーディオン
  4. ( 4-) HTML5・ページ作成の基本
  5. ( 7↑) 表示しているブラウザの高さを取得してCSSのheightに指定
  6. ( 5↓) jQueryでドロップダウンメニュー
  7. (10↑) CSSだけでブロック要素の表示非表示(トグルボタン)
  8. ( 6↓) スマホ・タブレット・PCの振り分けいろいろ
  9. ( 8↓) Windows 10にApache2.4 VC11をインストール
  10. ( -↑) jQueryで日時を表示【実践でjQuery入門】
  • facebook4
  • はてなブックマーク3
  • Google+6
  • Pocket0
  • Twitter0

JavaScriptでブロック要素の表示非表示

  • Labs

JavaScript

こんにちは(・∀・)

 JavaScriptを使用したサンプルをご紹介します。今回は要素の表示非表示です。

 ブロック要素の非表示はJavaScriptで制御しているのでJavaScriptを切っている場合はすべて展開した状態で表示されます。

1. 後ろの要素に重ねるタイプ

サンプルデモ

 サンプルデモはこちら!

HTML

<div class="container">
<div class="top">
<p>listen,<br>
overlook,<br>
voice,<br>
effort.</p>
<p id="topbtn"><a href="javascript:void(0)" onclick="objectopen(); return false;">More ≫</a></p>
<!--top--></div>
<div class="btm-wrap">
<div id="btm">
<div class="btm-inner">
<p>相手のいいたいことをきいてあげようという思いやり。<br>
相手の悪いところを大目にみてあげようという寛大さ。<br>
自分の気持ちや心を言葉で表すこと。<br>
あきらめずお互いに努力すること。</p>
<p id="btmbtn"><a href="javascript:void(0)" onclick="objectopen(); return false;">≪ Close</a></p>
<!--btm-inner--></div>
<!--btm--></div>
<!--btm-wrap--></div>
<div class="top">
<p>listen, overlook, voice, effort. listen, overlook, voice, effort.</p>
<p id="topbtn2"><a href="javascript:void(0)" onclick="objectopen2(); return false;">More ≫</a></p>
<!--top--></div>
<div class="btm-wrap">
<div id="btm2">
<div class="btm-inner">
<p>相手のいいたいことをきいてあげようという思いやり。相手の悪いところを大目にみてあげようという寛大さ。自分の気持ちや心を言葉で表すこと。あきらめずお互いに努力すること。相手のいいたいことをきいてあげようという思いやり。相手の悪いところを大目にみてあげようという寛大さ。自分の気持ちや心を言葉で表すこと。あきらめずお互いに努力すること。</p>
<p id="btmbtn2"><a href="javascript:void(0)" onclick="objectopen2(); return false;">≪ Close</a></p>
<!--btm-inner--></div>
<!--btm2--></div>
<!--btm-wrap--></div>
<!--container--></div>
CSS

.container {
	margin: 0 auto;
	text-align: left;
}
.container .top {
	padding: 10px 10px 0 10px;
	background: #fff;
}
.container .btm-wrap {
	position: relative;
}
.container .btm-wrap #btm {
	margin-top: -25px;
	width: 100%;
	position: absolute;
	z-index: 2;
	opacity: 0.9;
	filter: alpha(opacity=90);
	background: #fff;
	display: none;
}
.container .btm-wrap #btm2 {
	margin-top: -25px;
	width: 100%;
	position: absolute;
	z-index: 1;
	opacity: 0.9;
	filter: alpha(opacity=90);
	background: #fff;
	display: none;
}
.container .btm-wrap #btm .btm-inner,
.container .btm-wrap #btm2 .btm-inner {
	padding: 0 10px 10px 10px;
}
.container .top #topbtn,
.container #btm #btmbtn {
	text-align: left;
	display: block;
	width: 80px;
	margin: 0;
	cursor: pointer;
	color: #4776AF;
}
.container .top #topbtn2,
.container #btm2 #btmbtn2 {
	text-align: center;
	display: block;
	width: 80px;
	margin: 0 auto;
	cursor: pointer;
	color: #4776AF;
}
JavaScript

function objectopen(){
showobj('btm');
return false;
}
function showobj(obj) {
var box = document.getElementById(obj);
var btn1 = document.getElementById('topbtn');
if( box.style.display != "block" ) {
box.style.display = "block";
btn1.style.visibility = "hidden";
} else {
box.style.display = "none";
btn1.style.visibility = "visible";
}
}
function objectopen2(){
showobj2('btm2');
return false;
}
function showobj2(obj2) {
var box2 = document.getElementById(obj2);
var btn2 = document.getElementById('topbtn2');
if( box2.style.display != "block" ) {
box2.style.display = "block";
btn2.style.visibility = "hidden";
} else {
box2.style.display = "none";
btn2.style.visibility = "visible";
}
}

2. 後ろの要素に重ねないタイプ

サンプルデモ

 サンプルデモはこちら!

HTML

<div class="container">
<div class="top">
<p>listen,<br>
overlook,<br>
voice,<br>
effort.</p>
<p id="topbtn"><a href="javascript:void(0)" onclick="objectopen(); return false;">More ≫</a></p>
<!--top--></div>
<div id="btm">
<p>相手のいいたいことをきいてあげようという思いやり。<br>
相手の悪いところを大目にみてあげようという寛大さ。<br>
自分の気持ちや心を言葉で表すこと。<br>
あきらめずお互いに努力すること。</p>
<p id="btmbtn"><a href="javascript:void(0)" onclick="objectopen(); return false;">≪ Close</a></p>
<!--btm--></div>
<div class="top">
<p>listen, overlook, voice, effort. listen, overlook, voice, effort.</p>
<p id="topbtn2"><a href="javascript:void(0)" onclick="objectopen2(); return false;">More ≫</a></p>
<!--top--></div>
<div id="btm2">
<p>相手のいいたいことをきいてあげようという思いやり。相手の悪いところを大目にみてあげようという寛大さ。自分の気持ちや心を言葉で表すこと。あきらめずお互いに努力すること。相手のいいたいことをきいてあげようという思いやり。相手の悪いところを大目にみてあげようという寛大さ。自分の気持ちや心を言葉で表すこと。あきらめずお互いに努力すること。</p>
<p id="btmbtn2"><a href="javascript:void(0)" onclick="objectopen2(); return false;">≪ Close</a></p>
<!--btm2--></div>
<!--container--></div>
CSS

.container {
	margin: 0 auto;
	text-align: left;
}
.container .top {
	padding: 10px 10px 0 10px;
	background: #fff;
}
.container #btm,
.container #btm2 {
	margin-top: -25px;
	padding: 0 10px 10px 10px;
	width: 100%;
	background: #fff;
	display: none;
}
.container .top #topbtn,
.container #btm #btmbtn {
	text-align: left;
	display: block;
	width: 80px;
	margin: 0;
	cursor: pointer;
	color: #4776AF;
}
.container .top #topbtn2,
.container #btm2 #btmbtn2 {
	text-align: center;
	display: block;
	width: 80px;
	margin: 0 auto;
	cursor: pointer;
	color: #4776AF;
}
JavaScript

function objectopen(){
showobj('btm');
return false;
}
function showobj(obj) {
var box = document.getElementById(obj);
var btn1 = document.getElementById('topbtn');
if( box.style.display != "block" ) {
box.style.display = "block";
btn1.style.visibility = "hidden";
} else {
box.style.display = "none";
btn1.style.visibility = "visible";
}
}
function objectopen2(){
showobj2('btm2');
return false;
}
function showobj2(obj2) {
var box2 = document.getElementById(obj2);
var btn2 = document.getElementById('topbtn2');
if( box2.style.display != "block" ) {
box2.style.display = "block";
btn2.style.visibility = "hidden";
} else {
box2.style.display = "none";
btn2.style.visibility = "visible";
}
}

関連リンク

 CSSだけで要素の表示非表示

 jQueryで要素の表示非表示

  • カテゴリー:Labs
  • facebook4
  • はてなブックマーク3
  • Google+6
  • Pocket0
  • Twitter0