2012-06-20 34 views
0

我有一個幻燈片面板登錄框與jquery和它的工作罰款只關閉鏈接沒有工作 這裏是JavaScript代碼。滑動面板沒有關閉鏈接點擊

<script type="text/javascript"> 
$(document).ready(function(){ 
    $("#login-link").click(function(){ 
     $("#login-panel").slideToggle(200); 
    }) 
}) 
$(document).keydown(function(e) { 
    if (e.keyCode == 27) { 
     $("#login-panel").hide(0); 
    } 

}); 

$("#login-close").click(function() { 
$("#login-panel").hide(0); 
return false; 
}); 

</script> 

這裏是

<a id="login-link" href="#" title="Login">Login</a> 
<div id="login-panel"> 
<div style="padding-left:10px;width:190px; height:163px; background-color:#2a2a2a; text-align:left; vertical-align:text-top;"> 
<form id="login" action="<?php echo osc_base_url(true) ; ?>" method="post"> 
<table border="0" style="font: normal 10pt Tahoma; color:#fff;"> 
    <tr> 
    <td height="20" valign="top">Email <br> 
    <input id="email" type="text" value="" name="email"></td> 
    </tr> 
    <tr> 
    <td height="20" valign="top">Password<br> 
    <input id="password" type="password" value="" name="password"> 
    </tr> 
    <tr> 
    <td><input type="submit" name="submit" value="Sign In" /></td> 
    </tr> 
    <tr> 
    <td height="25" valign="top"> 
    <small><a href="#login-close">press ESC or close</a></small></td> 
    </tr> 
</table> 
</form> 
</div> 

它完美的作品,當按我ESC也關閉登錄框HTML。 但我以前不緊密的鏈接點擊,它只會增加在URL#登錄關閉

感謝

+0

您沒有任何元素與'登錄-close'一個id ... –

+0

它添加#登錄關閉到URL,因爲你沒有'返回false '在onclick處理程序的末尾。這會導致瀏覽器導航到鏈接。 – Sjoerd

+0

將id元素添加到錨標記press ESC or close

回答

1

您沒有任何具有登錄關閉標識的元素。試着改變你的親密錨這樣:

<a href="#login-close" id="login-close">press ESC or close</a> 

此外,確保所有代碼是文件準備好功能裏面。

$(document).ready(function(){ 
    $("#login-link").click(function(){ 
     $("#login-panel").slideToggle(200); 
    }); 

    $(document).keydown(function(e) { 
     if (e.keyCode == 27) { 
      $("#login-panel").hide(0); 
     } 
    }); 

    $("#login-close").click(function() { 
     $("#login-panel").hide(0); 
     return false; 
    }); 
}); 
0

工作的呢?

$("#login-close").click(function(e) { // added e to function arguments 
    e.preventDefault(); // added method here 
    $("#login-panel").hide(0); 
    // remove return false here. 
}); 

也是一個ID添加到鏈接:

<a id="login-close" href="#login-close">press ESC or close</a> 

你已經在你的JS(不是一切都在準備功能)和HTML(未關閉標籤)有失誤 - http://jsfiddle.net/dtctu/

0

您沒有給您的鏈接標識,因此$("#login-close")找不到它。

id="login-close"添加到您的鏈接。

0

工作演示http://jsfiddle.net/WhSTh/5/

id登錄關閉失蹤:我也加入其中<td>失蹤以及

<td height="25" valign="top"> <small><a href="#login-close" id="login-close"> press ESC or close</a></small></td>

希望這有助於,乾杯!

代碼

$(document).ready(function() { 
    $("#login-link").click(function() { 
     $("#login-panel").slideToggle(200); 
    }) 
}) 
$(document).keydown(function(e) { 
    if (e.keyCode == 27) { 
     $("#login-panel").hide(0); 
    } 

}); 

$("#login-close").click(function() { 
    $("#login-panel").hide(0); 
    return false; 
});​ 
相關問題