jQuery ajax加载函数不包含自定义javascript文件

时间:2013-06-15 05:23:07

标签: javascript jquery function load

我在我的网站上为“告诉朋友”应用程序制作了一个自定义jquery弹出框。它使用jQuery加载函数来包含Modules文件夹中的php文件并将其显示在弹出框中。 CSS工作正常,但是当我将Javscript绑定到它时,它根本不起作用。

下面的代码弹出“从模块文件夹中告诉朋友表单”

/* Popup for Email to a friend*/
    $("#emailtoafriend").click(function (){
        $("#overlay").removeClass("overlayHide");
        $("#overlay").addClass("overlayShow");
        $("#overlay").fadeIn("slow");
        $("#popup").load('modules/mod_tellafriend/default.php');
            return false;
    });

以下代码在用户点击“关闭”按钮时触发。这不起作用

$(".btnClose").click(function (){
    alert("Works");
    $("#overlay").fadeOut("slow");
    $("#overlay").removeClass("overlayShow");
    $("#overlay").addClass("overlayHide");
        return false;
});

以下是我在这个弹出框中使用的CSS

.overlay{
    width: 100%;
    height: 100%;
    position: absolute;
}

.overlayHide{
    display: none;
}

.overlayShow{
    display: block;
    background: url(../images/overlay.png) repeat;
    z-index: 1;
}

.popups{
    border: 1px solid #666;
    background-color: #FFF;
    width: 400px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 150px;
    padding: 10px;
    -webkit-box-shadow: 0px 1px 14px rgba(255, 255, 255, 1);
    -moz-box-shadow:    0px 1px 14px rgba(255, 255, 255, 1);
    box-shadow:         0px 1px 14px rgba(255, 255, 255, 1);
}

.popupTitle{
    font-weight: bold;
    font-size: 16px;
    border-bottom: 1px solid #CCC;
    padding-bottom: 5px;
}

.popupdescription{
    font-size: 12px;
    padding-top: 5px;
    padding-bottom: 5px;
}

.btnsubmit{
    width: 100px;
    line-height: 20px;
    font-weight: bold;
    background-color: hsl(120, 69%, 17%) !important; background-repeat: repeat-x; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#23c123", endColorstr="#0d490d"); background-image: -khtml-gradient(linear, left top, left bottom, from(#23c123), to(#0d490d)); background-image: -moz-linear-gradient(top, #23c123, #0d490d); background-image: -ms-linear-gradient(top, #23c123, #0d490d); background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #23c123), color-stop(100%, #0d490d)); background-image: -webkit-linear-gradient(top, #23c123, #0d490d); background-image: -o-linear-gradient(top, #23c123, #0d490d); background-image: linear-gradient(#23c123, #0d490d); border-color: #0d490d #0d490d hsl(120, 69%, 10%); color: #fff !important; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.46); -webkit-font-smoothing: antialiased;
}

.btncancel{
    width: 100px;
    line-height: 22px;
    font-weight: bold;
    color: #000;
    border: 1px solid #CCC;
    background: #FFF;
}

怎么了? 为什么CSS工作正常而JavaScript却没有。我的所有Javascripts都被加载到页面底部(不在头上)。

1 个答案:

答案 0 :(得分:0)

$ .load无法加载jsfile或javascript。

您可以将jsfile放在调用load的父页面中;

并将js放在$ .load函数中,如:

$("#popup").load('modules/mod_tellafriend/default.php',function(){
     //javascript
});