舉例來說:下圖我有兩個 Div-A, Div-B 。如果我壓了 【hide A】按鈕後,Div-A 就被我隱藏了。但我希望壓下 【Show Status】按鈕後,顯示出兩個 Div 的狀態。
遇到這種狀況時,可以善用 jQuery 的 .is( ) 方法來處理。它會比對你所提供的條件,並回傳 ture 或 false。在這個範例中,就可以使用 .is(:hidden) 或 .is(:visible) 來處理。
if($("#A").is(":hidden") )
{
.
.
.
}
範例程式:
<html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>未命名頁面</title> <script type="text/javascript" src="js/jquery-1.3.2.js"></script> <script> function HideA() { $("#A").hide(); } function ShowStatus() { var vMsg=''; if($("#A").is(":hidden") ) { vMsg+='DivA is hidden \n';} else {vMsg+='DivA is visible \n';} if($("#B").is(":hidden") ) { vMsg+='DivB is hidden \n';} else {vMsg+='DivB is visible \n';} $("#Msg").html(vMsg.replace(/\n/g,"<BR>")); } </script> </head> <body> <form id="form1" runat="server"> <div> <div id="A" style="border-width:1; border-color:Black; background-color:Aqua; width:250px">Div-A</div> <div id="B" style="border-width:1; border-color:Black; background-color:Green; width:250px">Div-B</div> <input type="button" value="hide A" onclick="HideA();" /> <input type="button" value="Show Status" onclick="ShowStatus();" /> <div id="Msg"></div> </div> </form> </body> </html>
執行結果:
參考:http://groups.google.com/group/jquery-en/browse_thread/thread/f243d091f1b9590b?pli=1
沒有留言:
張貼留言