javascript - 我如何使用 jquery 创建覆盖联系表单

标签 javascript jquery html css

我写了一些 jquery 来创建一个带有登录信息的覆盖框。当用户在导航中按下“登录”时,效果很好。

Fiddle

我确实有一个单独的联系表单页面。但我决定我宁愿只使用一个覆盖联系表单,就像登录一样。但是,第二个对象不像登录表​​单那样显示。

我一定是做错了什么,但我不确定是什么

HTML

<!--POP UP FORM-->
<div id="login-box" class="login-popup">
    <a href="#" class="close"><img src="images/mini_green_x2.png" class="btn_close" title="Close Window" alt="Close" /></a>
    <form action="https://www.theiracenter.com/customerLoginAction.gsx" method="post">
        <label for="username">Username:</label>
        <br />
        <input class="topLogin" type="text" name="login" width="125px" />
        <br />
        <label for="password">Password:</label>
        <br />
        <input class="topLogin" id="passwordText" type="password" name="password" width="125px" />
        <input type="hidden" name="pd" value="C05" />
        <br />
        <input type="submit" id="loginSubmit" value="Submit" />
    </form>
</div>

<div id="contact-box" class="login-popup">
    <a href="#" class="close"><img src="images/mini_green_x2.png" class="btn_close" title="Close Window" alt="Close" /></a>
    Contact Us!
</div>

<div class="d5-d10 m1" id="navHolder">
    <ul id="mainNavigation">
        <li><a href="#login-box" class="login-window">Log In</a></li>
        <li><a href="#contact-Box" class="login-window">Contact</a></li>
        <li><a href="investment.html">Investment</a></li>
        <li><a href="faq.html">FAQ</a></li>
    </ul>
</div>

JQUERY

<script type="text/javascript">
$(document).ready(function () {
    $('a.login-window').click(function () {

        // Getting the variable's value from a link
        var loginBox = $(this).attr('href');

        //Fade in the Popup and add close button
        $(loginBox).fadeIn(300);

        //Set the center alignment padding + border
        var popMargTop = ($(loginBox).height() + 24) / 2;
        var popMargLeft = ($(loginBox).width() + 24) / 2;

        $(loginBox).css({
            'margin-top': -popMargTop,
            'margin-left': -popMargLeft
        });

        // Add the mask to body
        $('body').append('<div id="mask"></div>');
        $('#mask').fadeIn(300);

        return false;
    });

    // When clicking on the button close or the mask layer the popup closed
    $('body').on('click', 'a.close, #mask', function () {
        $('#mask , .login-popup').fadeOut(300, function () {
            $('#mask').remove();
        });
        return false;
    });
});
</script>

和 CSS

/*LOG IN POP UP*/
/* Mask for background, by default is not display */
#login-box label{
    font-family:'Droid Sans', sans-serif;
    color:#6EBE44
}

#login-box img{
    float:right;
}

#mask {
    display: none;
    background: #000;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 10;
    width: 100%;
    height: 100%;
    opacity: 0.8;
    z-index: 999;
}

.login-popup {
    display: none;
    background: #666666;
    padding: 10px;
    border: 2px solid #ddd;
    float: left;
    font-size: 1.2em;
    position: fixed;
    top: 50%;
    left: 50%;
    z-index: 99999;
    box-shadow: 0px 0px 20px #999;
    /* CSS3 */
        -moz-box-shadow: 0px 0px 20px #999;
    /* Firefox */
        -webkit-box-shadow: 0px 0px 20px #999;
    /* Safari, Chrome */
    border-radius: 3px 3px 3px 3px;
    -moz-border-radius: 3px;
    /* Firefox */
        -webkit-border-radius: 3px;
    /* Safari, Chrome */;
}

img.btn_close {
    Position the close button
    float: right;
    margin: -28px -28px 0 0;
}

fieldset {
    border: none;
}

form.signin .textbox label {
    display: block;
    padding-bottom: 7px;
}

form.signin .textbox span {
    display: block;
}

form.signin p, form.signin span {
    color: #999;
    font-size: 11px;
    line-height: 18px;
}

form.signin .textbox input {
    background: #666666;
    border-bottom: 1px solid #333;
    border-left: 1px solid #000;
    border-right: 1px solid #333;
    border-top: 1px solid #000;
    color: #fff;
    border-radius: 3px 3px 3px 3px;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    font: 13px Arial, Helvetica, sans-serif;
    padding: 6px 6px 4px;
    width: 200px;
}

form.signin input:-moz-placeholder {
    color: #bbb;
    text-shadow: 0 0 2px #000;
}

form.signin input::-webkit-input-placeholder {
    color: #bbb;
    text-shadow: 0 0 2px #000;
}

.button {
    background: -moz-linear-gradient(center top, #f3f3f3, #dddddd);
    background: -webkit-gradient(linear, left top, left bottom, from(#f3f3f3), to(#dddddd));
    background: -o-linear-gradient(top, #f3f3f3, #dddddd);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#f3f3f3', EndColorStr='#dddddd');
    border-color: #000;
    border-width: 1px;
    border-radius: 4px 4px 4px 4px;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    color: #333;
    cursor: pointer;
    display: inline-block;
    padding: 6px 6px 4px;
    margin-top: 10px;
    font: 12px;
    width: 214px;
}

.button:hover {
    background: #ddd;
}

最佳答案

我认为这只是一个大小写错误:你有 id="contact-box"href="#contact-Box"

关于javascript - 我如何使用 jquery 创建覆盖联系表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23956701/

相关文章:

javascript - 包装重新定义 "this"的 JavaScript 回调

javascript - 从 PHP 使用 AJAX 解析 JSON 数组

javascript - 在 angular.module 之前加载 javascript 文件

javascript - 如何在 onclick 后立即更改 Accordion 的图标

javascript - 如何检查数据属性是否更改?

html - 将鼠标悬停在一个列表项上也会影响每个列表项

javascript - 单击表格单元格时,如何让 jquery 版本的tinyMCE 在弹出窗口中打开多个文本区域?

javascript - 使用jquery限制用户在文本框中插入空格、大写字母、第一个值作为int

javascript - 日期的 jQuery val 会导致某些日期为空字符串

html - 如何使用 Bootstrap v.4.0.0 创建透明的超大屏幕?