3個元素我的問題是接近這個問題: jQuery onmouseover + onmouseout/hover on two different divs的jQuery,JavaScript中,工作與哈弗
不過,我使用3個元素,而不是2.我在做什麼是隱藏AsyncFileUpload控制(AjaxControlToolkit )並使用重疊FileUpload的<div>
。 然後,我只是將FileUploads不透明度設置爲0,但Z-index高於<div>
。所以只有<div>
顯示,如果用戶點擊該div。那麼他們將點擊AsyncFileUpload控件,因爲它具有更高的z-index。
總之,這裏的一些代碼:
<asp:Image ID="myProfilePicture" ClientIDMode="Static" runat="server" />
<div id="pic_tools">
<ajaxToolkit:AsyncFileUpload ID="ImageUpload" CssClass="myProfileUpload" OnClientUploadStarted="ClientUploadStarted"
OnClientUploadComplete="ClientUploadComplete" OnUploadedComplete="ImageUpload_UploadedComplete"
Width="216px" runat="server" />
<div class="FakeUploader">Click me to upload</div>
</div>
$(function() {
$('#myProfilePicture, #myProfileUpload, .FakeUploader').hover(function() {
$(".FakeUploader").show();
}, function() {
$('.FakeUploader').hide();
});
});
一切正常,但是當鼠標移動到.FakeUploader(實際上它已經結束了#myProfileUpload(實際asyncfileupload控制)).FakeUpload是隱藏的。
注意:這兩個控件#myProfileUpload和.FakeUpload都有display:none;此外,我正在測試JS代碼上面沒有設置顯示:無;在#myProfileUpload上。
所以我的問題是: 當鼠標進入#myProfilePicture時,如何顯示.FakeUpload和#myProfileUpload(opacty:0)。然而,當鼠標結束時,它們都會顯示出來.FakeUpload在#myProfileUpload下面。當然在Mouseout上都會隱藏它們。
在此先感謝。
UPDATE
那麼,如果你最終在這裏尋找類似問題的答案。確保你沒有像我這樣寫#myProfileUpload,因爲它不存在。我用.myProfileUpload取代了它,它按原樣工作。
如果yuo解決了您的問題,請寫下答案並將其標記爲已接受:) – Kyle