javascript - Js 文件加载不正确

标签 javascript jquery python flask

CSS 文件似乎可以正确加载。 JS 文件似乎也加载了,但它们都处于非事件状态,控制台上没有错误消息。

我的文件是:

    <head>
    <link rel="stylesheet" href="/static/libs/font-awesome4/css/font-awesome.min.css">
    <link rel="stylesheet" type="text/css" href="/static/libs/bootstrap/dist/css/bootstrap.min.css">
    <link rel="stylesheet" type="text/css" href="/static/css/style.css">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
    <script type="text/javascript" src="/static/js/script.js"></script>
    <link rel="stylesheet" href="/_debug_toolbar/static/css/toolbar.css?0.7082793798424954" type="text/css">
</head>

唯一特定于站点的文件是 script.js。 Script.js 是下面的短代码:

$.fn.countdown = function (callback, duration, message) {
    message = message || "";
    var container = $(this[0]).html(duration + message);
    var countdown = setInterval(function () {
        if (--duration) {
            container.html(duration + message);
        } else {
            clearInterval(countdown);
            callback.call(container);   
        }
    }, 1000);
};

// Use p.countdown as container, pass redirect, duration, and optional message
$(".countdown").countdown(submit_on_time, 30, "s remaining");

// Function to be called after 5 seconds
function submit_on_time () {
    $('#interview-form').submit();
}

enter image description here

我很难找到这个问题的根源。

最佳答案

您的脚本在 <head> 中部分,在任何元素可用之前,所以 $(".countdown")返回一个空对象。
您需要添加 $(document).ready()或者将脚本放在底部,就在 </body> 之前(或至少在您尝试访问的元素下方)。

$.fn.countdown = function (callback, duration, message) {
    message = message || "";
    var container = $(this[0]).html(duration + message);
    var countdown = setInterval(function () {
        if (--duration) {
            container.html(duration + message);
        } else {
            clearInterval(countdown);
            callback.call(container);   
        }
    }, 1000);
};

// Function to be called after 5 seconds
function submit_on_time () {
    $('#interview-form').submit();
}

// Use p.countdown as container, pass redirect, duration, and optional message

$(document).ready(function() {
    $(".countdown").countdown(submit_on_time, 30, "s remaining");
});

关于javascript - Js 文件加载不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29811561/

相关文章:

python - conda创建环境py3.7,只安装jupyter,但发现冲突

javascript - 如何在 Strapi v3 中创建多级(嵌套)类别?

jquery - 如何去除主页上的水印?

jquery - 如何在 jQuery 中的事件发生后执行某些操作?

python将字典结果与重叠键结合起来

python - 如何使用 python setup.py 上传?

javascript - 如何从 JavaScript 中的对象中删除 "integer"数组

javascript - 通过css给html添加图标

javascript - 默认显示第一个导航窗口,直到其他人点击?

jquery - 迁移到 jquery 1.4