开发者问题收集

外部 javascript 文件和函数不起作用

2021-07-29
1055

我是 javascript 新手。我试图在加载时弹出一个消息框。由于我是初学者,我从互联网上复制了代码,只是想看看它是如何工作的,但出于某种原因,弹出窗口没有出现。我知道代码没有错,因为它在视频中运行正常。 调用方法有点不同,因为我使用的是 django。

控制台错误

auto.js:6 Uncaught TypeError: Cannot read property 'style' of null

html 代码

{% block content %}
<script type="text/javascript" src="{% static 'auto.js' %}"></script>

<div class="popup">
    <div class="contentBox">
        <div class="close"></div>
        <h3 style="color: oldlace;">TESTING POPUP</h3>

    </div>
</div>
{% endblock %}

javasript 代码

const popup = document.querySelector('.popup');

window.onload = function(){
  setTimeout(function(){
    popup.style.display = "block"

    // add some time delay o show

  }, 2000)
}
2个回答

您需要在 html 后加载 js 文件:

{% block content %}
<div class="popup">
    <div class="contentBox">
        <div class="close"></div>
        <h3 style="color: oldlace;">TESTING POPUP</h3>

    </div>
</div>

<script type="text/javascript" src="{% static 'auto.js' %}"></script>
{% endblock %}
kamran890
2021-07-29

语法 s document.querySelector(Selector) 我不认为 .popup 是您列表中的选择器。

karim sharif
2021-07-29