0

ここの例を使用して、Web サイトにメニューを追加しています。元の HTML には、このメニューを内部に持つ div があります。その上で circleMenu 効果を呼び出します。

            <ul id="container" >
            <li class="ui-state-default">example1
                <!--menu button-->
                <ul class="menu" id="menu6">
                    <li><a href="#"></a></li>
                    <li><a href="#" alt="Edit" title="Edit"><img src="images/edit.jpg" /></a></li>
                    <li><a href="#" alt="Copy" title="Copy"><img src="images/copy.jpg" /></a></li>
                    <li><a href="#" alt="Delete" title="Delete"><img src="images/delete.jpg" /></a></li>
                </ul>
            </li>
        </ul>

                $('.menu').circleMenu({
                direction: 'right',
                circle_radius: 80,
                item_diameter: 20,
                trigger: 'click'
            });

ここで、ページの別の場所で、example2 リスト項目と同じメニューを作成します。今回以外は、作成したばかりなので、circleMenu エフェクトはアタッチされません。作成直後に効果を適用するにはどうすればよいですか? または、その時点で現在のすべての「.menu」アイテムを使用するように既存の呼び出しを変更しますか?

4

2 に答える 2

1

jquery .on() を使用する

$('.menu').on("load", data, function(event){
    $('.menu').circleMenu({
         direction: 'right',
         circle_radius: 80,
         item_diameter: 20,
         trigger: 'click'
    });
});

2 番目の引数にデータを渡すことも、単に null に設定することもできます。

于 2013-01-16T12:01:22.537 に答える
0

動的に作成された要素にイベントを追加するには、jQuery の.bind()(.live()は廃止予定 ) が役立つ場合があります。

http://api.jquery.com/bind/

たとえば、新しい要素を作成して ID を指定するとします。次に、この新しく作成された要素をコードで#example2呼び出す必要があります。.bind()

于 2013-01-16T11:27:09.573 に答える