-2

Jquery を使用して要素をクリックして、要素の ID を変更しようとしています。操作は最初のクリックでは機能しますが、その後のクリックでは機能しません。

$(document).ready(function(){
$("#chatframebuttonhidden").click(function() {
var $t = $(this);
            $t.attr({
                    id : $t.attr('id2')
                });
            });;
$("#chatframebuttonshown").click(function() {
var $t = $(this);
            $t.attr({
                    id : $t.attr('id1')
                });
            });;
});


<div id="chatframebuttonhidden" id2="chatframebuttonshown" id1="chatframebuttonhidden"></div>

「非表示」という用語は、div が表示されていないことを意味するのではなく、div がはるかに小さく、目立たないことを意味します。

最終的な目標は、画面の下部にある大きな固定位置の仕切りを非表示/非表示にするボタンを作成することです。新しいスタイルシートを参照するように ID を変更するのが最善の方法だと思いますが、もっと良い方法を知っていれば、私は耳を傾けます。

4

3 に答える 3

1

代わりにクラスを使用して、オンとオフを切り替えます。ID は実際にはそのように変更されることを意図したものではなく、クラスは変更されます。

また、一部の要素を非表示にするためにスタイルシート全体を交換する必要もありません。親コンテナを使用して非表示にします。

于 2012-09-09T21:21:43.197 に答える
1

jQuery を使用しますtoggle

$("#chatframebutton").click(function() {
 $('#chatframe').toggle();
});

このユース ケースでは、クラスや ID を調整する必要はありません。

http://api.jquery.com/toggle/

于 2012-09-09T21:23:23.420 に答える
0

スタイルシートのプロパティを変更するには、ID の代わりにクラスを使用します。

$(#chatframebutton).toggleClass(chatframebuttonshownhidden);

スタイルシートに chatframebuttonshownhidden が記述されている場所

詳細については、 http://api.jquery.com/toggleClass/をご覧ください。

于 2012-09-09T21:40:11.597 に答える