2013-10-09 48 views
0

我有一個div。這是我製作幻燈片並通過jQuery函數myjquery功能滑下是如何向上滑動div點擊任何地方

<script type="text/javascript"> 
    jQuery(window).load(function() { 

     $("#nav > li > a").click(function() { // binding onclick 
      if ($(this).parent().hasClass('selected')) { 
       $("#nav .selected div div").slideUp(700); // hiding popups 
       $("#nav .selected").removeClass("selected"); 
      } else { 
       $("#nav .selected div div").slideUp(400); // hiding popups 
       $("#nav .selected").removeClass("selected"); 

       if ($(this).next(".subs").length) { 
        $(this).parent().addClass("selected"); // display popup 
        $(this).next(".subs").children().slideDown(200); 
       } 
      } 
     }); 

    }); 
</script> 

和HTML是

<ul id="nav">  
      <li><a href="#"><b>Login</b></a> 
       <div class="subs"> 
        <div> 
         <ul> 
          <table style="margin-right:12PX;width:200px;overflow:scroll;"> 
          <tr style="width:70px"><td>Mobile Number</td></tr> 
          <tr> <td><asp:TextBox runat="server" ID="TextBox1" CssClass="selectfield" Width="170px"/></td> 
          </tr><tr><td>Password</td></tr><tr><td><asp:TextBox runat="server" ID="TextBox2" TextMode="Password" Width="170px" CssClass="selectfield" /></td></tr> 
          <tr style="height:5px;"><td></td></tr> 
          <tr><td> 
           &nbsp;<asp:Button ID="Button1" 
            runat="server" Text="Login" CssClass="btn" onclick="Button1_Click" /></td></tr> 
           <tr><td style="color:Red;"> 
            <asp:LinkButton ID="LinkButton1" runat="server" CssClass="link">Forget Password</asp:LinkButton></td></tr> 
          </table> 
          </ul> 

當我點擊登錄股利子是向下滑動並再次點擊登錄股利效果基本show 。它運行完美。我想當我點擊登錄div應該滑下來。之後如果點擊頁面上的任何地方除外<div><div>應該上滑。

回答

1

檢查這方面的工作小提琴:http://jsfiddle.net/WxcLV/10/
而不是click嘗試,因爲下面使用mouseup

$('#loginButton').mouseup(function(login) { 
    $('#loginBox').toggle(); 
    $('#loginButton').toggleClass('active'); 
}); 

$('#loginTable').mouseup(function() { 
    // to avoid hiding div 
    return false; 
}); 
$(this).mouseup(function(login) { 
    if(!($(login.target).parent('#loginButton').length > 0)) { 
     $('#loginButton').removeClass('active'); 
     $('#loginBox').hide(); 
    } 
}); 
+0

prasad我嘗試它,但它不工作,div滑動上下,當我點擊登錄 –

+0

我通過更改目標div的名稱它的工作,但不是總是hw來改善它,以便它可以工作,當我點擊登錄 –

+0

@VikasRana:請檢查更新的答案。 –

0

好吧,我有一個解決它的方法,希望它會爲你工作,請拿一個Container div或讓身體標籤(其大小是這樣,它涵蓋了整個頁面,例如,100%)和添加一個onclick事件,並在該事件中滑動div。請注意Container div或Body標籤應覆蓋整個頁面,以使其看起來像用戶單擊頁面上的任何位置。那就是訣竅

讓我知道它是否有幫助。

1

這將工作

$(document).bind("click", function (event) {  
    if (!$(event.target).is('.subs') && $(event.target).closest('.subs').length==0) { 
     $("#nav .selected div div").slideUp(700); 
     $("#nav .selected").removeClass("selected"); 
    } 
}); 

還需要照顧,如果你裏面的div點擊。

+0

當你看到我的HTML我正在使用登錄div我必須點擊裏面的div是否有任何方法我點擊內部div nothing.otherwise它工作正常 –

+0

你想要什麼呢?上面的代碼將隱藏你的div時,除了div本身點擊文檔上的任何地方 – Patel

+0

當我點擊裏面的div div是隱藏我不想這 –