當我將鼠標移動到容器面板上時,會顯示子面板,但只要將鼠標移到子面板上,便會觸發mouseout事件並隱藏面板。防止沒有Jquery的冒泡
這是我的代碼的簡化版本,因爲面板位於gridview內,因此我不能像原樣使用document.getElementById(「panelchild」)(js會得到特定的id後者),但現在我想讓它適用於這個簡單的案例。
這是部分腳本:
<script type="text/javascript">
function ShowPanel(e) {
// e = e || window.event;
// var evtSrc = e.target || e.srcElement;
var panel = document.getElementById("panelchild")
if (panel.style.display == "none")
panel.style.display = "";
else
panel.style.display = "none";
}
</script>
這是標記:
<asp:Panel id="panelContainer" runat="server" onmouseover="ShowPanel(event)" onmouseout="ShowPanel(event)" >
<asp:HyperLink ID="lnkTitle" runat="server" style="float:left;margin-right:10px;" Text="This is title" NavigateUrl="www" />
<asp:Panel id="panelchild" runat="server" style="display:none" >
<a id="A1" href="javascript: void(0);" style="text-decoration: none;">
<img src="mylocalsite/images/Misc_Edit.gif" style="border:0px;float:left;" />
</a>
</asp:Panel>
</asp:Panel>
你想達到什麼?只要panelChild位於panelContainer內部,您就可以做的事情不多。 – 2010-03-17 12:45:33
我可以將chidpanel移動到外面,但是,我必須將事件也添加到孩子。 – mariki 2010-03-17 12:59:57
爲什麼你拒絕使用jQuery,如果你正在使用其他框架,它可能使用jQuery以及使用noconflict(); – ant 2010-03-17 13:08:44