没有调用JS函数?

时间:2014-11-18 16:58:08

标签: javascript html arrays

我是一个完全nooblet在JavaScript,所以如果有人可以帮助我id欣赏它:))

我试图从我的外部js文件调用我的函数(问题)但是它没有加载它的任何理由。任何帮助都会很棒!

HTML文件

 <section>

    <h3 id="q1" window.onload= "loadQuestion1()" style="color:blue"></h3>
    <ul>
        <li><input type="radio" id="answers" value="Css is 1" >Answer 1</li>
        <li><input type="radio">Answer 2</li>
        <li><input type="radio">Answer 3</li>
        <li><input type="radio">Answer 4</li>
    </ul>

    </section>
</div>

<footer>
</footer>
<script type="text/javascript" src="js/quiz.js"></script>
</body>

javascript文件

console.log("53");

var questions = Array["question 1", "question 2", "question 3","question 4" ]

function loadQuestion1(){
console.log("q1");
document.getElementById('q1').innerHTML = "text";
}
function rand(min, max) { 

var offset = min; 
var range = (max - min) + 1; 
var randomNumber = Math.floor( Math.random() * range) + offset; 
return randomNumber; } 

randomNumber = rand(0, questions.length - 1); 
randomQuestions = questions.[randomNumber];

所以目前它应该加载“#34; text&#34;但由于某些原因它没有加载 - 更别提实际的问题。

p.s我试图制作一个小测验应用程序,从数组中选择一个随机问题

3 个答案:

答案 0 :(得分:1)

window.onload是一个JavaScript属性,而不是HTML属性。

HTML属性中没有.

HTML中没有window属性。

onload元素没有h3属性(因为它不会触发任何内容的加载)。

如果你在90年代编写代码,你会:

<body onload="loadQuestion1()">

00s的代码通常会使用:

window.onload = loadQuestion1;

这十年的代码通常使用:

addEventListener('load', loadQuestion1);

答案 1 :(得分:0)

你应该从h3标签中删除代码window.onload =“loadQuestion1()”并将onload =“loadQuestion1()”添加到body标签。

这应该有用。

这是工作代码,你在JS中也有一些语法错误,请与你的代码进行比较

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
</head>
<body onload="loadQuestion1()">
<section>
    <h3 id="q1" style="color:blue"></h3>
    <ul>
        <li><input type="radio" id="answers" value="Css is 1">Answer 1</li>
        <li><input type="radio">Answer 2</li>
        <li><input type="radio">Answer 3</li>
        <li><input type="radio">Answer 4</li>
    </ul>
</section>
<footer>
</footer>
<script type="text/javascript">
    console.log("53");

    var questions = Array["question 1", "question 2", "question 3", "question 4" ];

    function loadQuestion1() {
        console.log("q1");
        document.getElementById('q1').innerHTML = "text";
    }
    function rand(min, max) {

        var offset = min;
        var range = (max - min) + 1;
        var randomNumber = Math.floor(Math.random() * range) + offset;
        return randomNumber;
    }

    randomNumber = rand(0, questions.length - 1);
    randomQuestions = questions[randomNumber];
</script>
</body>
</html>

答案 2 :(得分:0)

把你的JS放在这里:

window.onload = function(){
    /*YOUR JS HERE*/
}

当文档的窗口准备就绪时,window.onload事件开始