ボタンがクリックされたときに表示したい「info」というdivがあります。
<button>Toggle</button>
<div id="toggle">
Test
</div>
基本的には、jQuery を使用してスライド機能で表示したいのですが、方法がわかりません。私はほとんどのコードをオンラインで見つけてスニペットを見ることができますが、実際にはそのほとんどをどこに置くべきかわかりません.これを機能させますか?ありがとうございました。
CSS
#toggle {
display: none
}
jQuery
$(document).ready(function() {
$('button').on('click', function() {
$('#toggle').slideToggle();
});
});
少し説明:
$('button')
button
タグへのセレクタです。
$('button').on('click',
クリックイベントを にバインドするためのものbutton
です。
ここの 2 番目のパラメータon()
はコールバック ハンドラで、その中のコードは をクリックした後に実行されますbutton
。
$('#toggle')
div
withへのセレクターid=toggle
です。
$('#toggle').slideToggle()
div
ボタンのクリック時にスライド (上下) 効果を作成します。
jQuery dom ready 関数内でコードを実行する必要があります。次のようなものです:
$(document).ready(function() {
// your code
})
要するに
$(function() {
// your code
});
これらは JavaScript コードであるため、<script>
タグ内に配置する必要があります。例えば:
<script type="text/javascript">
$(document).ready(function() {
$('button').on('click', function() {
$('#toggle').slideToggle();
});
});
</script>
ただし、このコードを外部ファイルに書き込む場合は、そのファイルを<head>
次のようにタグ内に含める必要があります。
<script type="text/javascript" src="src_to_script"></script>
最初にクリックしたときにボタンを非表示にすることはできますか?
はい、可能です。以下のようにしてみてください:
$(document).ready(function() {
$('button').on('click', function() {
$(this).hide(); // disappear the button after first click
$('#toggle').slideToggle();
});
});
ここにリンクの説明を入力してくださいこれを試すことができます:
$(document).ready(function(){
$('div#toggle').hide();
$('button').on('click', function(){
$('#toggle').slideToggle();
});
});
この方法でもそれを行うことができます:
$(document).ready(function() {
$('button').bind('click', function() {
if ($('#toggle').is(':visible')) {
$('#toggle').hide();
}else{
$('#toggle').show();
}
});
});