2011-11-12 34 views
1

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取代了它,它按原樣工作。

+1

如果yuo解決了您的問題,請寫下答案並將其標記爲已接受:) – Kyle

回答

0

那麼,如果你最終在這裏尋找類似問題的答案。確保你沒有像我這樣寫#myProfileUpload,因爲它不存在。我用.myProfileUpload取代了它,它按原樣工作。