私は、ユーザーがマウスオーバーするとDIVメニューを作成しています。 divメニューには、onclickイベントを持つ2つの子divもあります。アイコン上にマウスを置くと、メニューdivが表示されますが、子divを選択しようとしているときにメインメニューdivが非表示になります。mouseoverとmouseout events jQuery
<div id="actionMenu" style="display:none;width:40px;height:30px;background-color:white;z-index:9">
<div id="addRowDiv">Add</div >
<div id="deleteRowDiv">Delete</div>
</div>
$(actionImage).mouseover(function(e) {
// get the coordinates
var x = e.pageX - 40;
var y = e.pageY - 10;
$("#actionMenu").css({
position:"absolute",
top: y + "px",
left: x + "px"
});
$("#actionMenu").attr("rowId", $(td).parent().attr("id"));
$("#actionMenu").show();
});
$("#actionMenu").mouseout(function() {
$(this).hide();
});
$("#actionMenu").find("#addRowDiv").click(function() {
alert('add row clicked');
});
UPDATE 1:
Iは、データが取り込まれているテーブルを有しています。列の1つがアイコン(actionImage)です。アイコンの上にマウスを置くと、divメニュー(完了)が表示されます。 divメニューには2つの子div(追加と削除)があります。さて、私が子divの上にマウスを置くと、メインdiv(actionMenu)が消えます。子divがアクションメニューdiv内にあるので、なぜ消えますか?
コードをクリーンアップしたい場合があります。 $(actionImage)とは何ですか? – j08691
アイコンの上にマウスを置くと、どこにメニューが表示されますか?アイコンの上にマウスを移動しながら、メニューをカーソルに沿って実行しますか? –
詳細だけを更新しました! – azamsharp