未调用 JavaScript 函数

标签 javascript html

我正在尝试制作一个程序来测试某人学习不同外来单词的能力。为此,我需要一个 JavaScript 函数来隐藏 DIV 并填充空 DIV,然后调用 setTimeout()。问题是据我所知,这个函数没有被调用。

我尝试在网上寻找答案,但找不到有效的解决方案,也许你们中的一个人可以提供帮助。这是我的代码:

<html>
<head>
    <style type="text/css">
        #starter
        {
            text-align: center;
            margin-top: 15%;
        }

        #main
        {
            text-align: center;
            z-index: -1;
            <?php
                $i = rand(1, 8); 
                switch($i) {    

                }
            ?>
        }
    </style>
    <script type="text/javascript">

        function weghalen(var element) {
            var element = document.getElementById('starter');
                element.parentNode.removeChild(element);
        }

        function volgendePagina() {
            window.location.href = "test.php";
        }

        function startOnderzoek() {
            weghalen('starter');

            var tekst = <?php include 'Scripts.php'; echoWoorden(); ?>;
            document.getElementById('mainP').innerHTML = tekst;

            setTimeout(volgendePagina(), 6000);
        }

    </script>
</head>

<body>
    <div id="starter">
        <p>
            Als u op 'Start onderzoek' druk begint uw timer van 6 seconden te lopen. Aan het einde van uw 6 seconden wordt u vanzelf naar een volgende pagina gebracht.
        </p>
        <a href="javascript: startOnderzoek()">
            <input type="button" value="Start onderzoek" />
        </a>
    </div>
    <div id="mainDIV">
        <p id="mainP"></p>
    </div>
</body>

提前致谢!

最佳答案

尝试更改链接以使用 onclick:

<a href="javascript:void(0);" onclick="startOnderzoek(); return false;">

您还需要将 setTimeout 更改为:

setTimeout(volgendePagina, 6000);

在 volgendePagina 之后加上括号将导致它立即执行,而不是在 6 秒结束时执行。

还引用了 Paul 关于 weghalen 函数的说法。该参数的名称与您正在创建的变量的名称相同。

您可能需要考虑像这样重构该函数:

function weghalen(child) {
    var element = document.getElementById('starter');
        element.parentNode.removeChild(child);
}

我也不确定 weghalen 的逻辑将按您的预期工作。

关于未调用 JavaScript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27693372/

相关文章:

javascript - 在 jQuery 对话框关闭之前不返回结果?

javascript - 使用 element.style 添加到以前的样式

javascript - 如何在javascript中输入小数

javascript - 如何将带有 HTML 标签的字符串打印为 HTML

javascript - 为什么 DocumentFragment 会忽略一些附加节点?

html - 如何在html中标记图像的版权?

javascript - 在 onFocus 中使用 setState 移除焦点

html - 如何创建响应式并排表单?

html - 输入文本在 iPad 上闪烁

javascript - 带有可选字符的 jQuery Mask