0

前/次のナビゲーションボタンを含むツールチップとして「ダイアログ」を表示しているクラスがあります。それを踏まえて内容を更新しています。

ただし、実行できるのは 1 回だけです。コードは次のとおりです。

$(".corner").mouseenter(function(e){
    tt_index=1;

    var id=this.id;
    $("#popup-div").html(getMultipleBooking(id.toString(),tt_index));
    $("#popup-div").height(120);

     $("#popup-div").dialog({
         resizable: false,
         autoOpen: true,
         width: 277,
         position: [e.pageX+5, (e.pageY+5)-$(document).scrollTop()+10], 

         });

     $(".ui-dialog-titlebar").hide();

     //closing the dialog when mouse enters into the white space

     $("#tt_next").click(function(){
         ++tt_index;
         $("#popup-div").html(getMultipleBooking(id.toString(),tt_index));          
    });
});
4

1 に答える 1

1

ページがロードされたときに、トリガーするツールチップ/ダイアログは既に dom にありますか? また、マウスアウトすると、ツールチップ/ダイアログが DOM から削除されますか?

その場合、jQuery で on() メソッドを使用する必要があります。http://api.jquery.com/on/ ..そのため、イベントは積極的にリッスンします。この場合、DOM のトリガー (.corner) に関連付けられているイベントのバインドが失われます。.. その後、トリガーをロールアウトするときに、mouseleave イベントを使用してトリガーすることもできます。

例:

$(".corner").on("mouseenter",function(e){ 
           code stuff goes here for mouseenter 
}).on("mouseleave",function(e){ 
           code stuff goes here for mouseleave 
});

お役に立てれば!

于 2013-02-28T20:58:13.593 に答える