このコードはfrm01を示しています:
$(document).ready(function() {
$("#reg").click(function () {
$("#frm01").show("slide", { direction: "down" }, 1000);
});
});
ただし、frm01がすでに表示されている場合は非表示にし、その逆も同様です。どうすればこれを行うことができますか?
このコードはfrm01を示しています:
$(document).ready(function() {
$("#reg").click(function () {
$("#frm01").show("slide", { direction: "down" }, 1000);
});
});
ただし、frm01がすでに表示されている場合は非表示にし、その逆も同様です。どうすればこれを行うことができますか?
jQueryのtoggle()
メソッドを試してください:
$(function() {
$("#reg").click(function () {
$("#frm01").toggle(1000);
});
});
if-elseステートメントを使用するためにjQueryは必要ありません。Javascriptはそれらをネイティブに実装します...
$(function() {
$("#reg").click(function () {
if ($("#frm01").is(":visible"))
$("#frm01").slideUp(1000);
else
$("#frm01").slideDown(1000);
});
});
これを試して:
$(document).ready(function() {
$("#reg").click(function () {
if ($("#frm01").is(':hidden')) {
$("#frm01").show("slide", { direction: "down" }, 1000);
} else {
$("#frm01").hide(1000);
}
});
});
$ .toggle()メソッドを使用して、表示と非表示を切り替えることができます。要素が非表示か表示かを識別するには、しばらく時間が必要です。
$("#reg").click(function () {
if($("#frm01").hasClass('fram1-slide-on')){
$("#frm01").hide();
$("#frm01").removeClass('fram1-slide-on');
} else {
$("#frm01").show("slide", { direction: "down" }, 1000);
$("#frm01").addClass('fram1-slide-on');
}
});
$("#reg").on('click', function () {
$("#frm01:hidden").show("slide", { direction: "down" }, 1000);
$("#frm01:visible").hide("slide", { direction: "up" }, 1000);
});
また
$("#reg").toggle(
function () {
$("#frm01").show("slide", { direction: "down" }, 1000);
},
function(){
$("#frm01").hide("slide", { direction: "up" }, 1000);
}
);
また動作するはずです