如何将图像添加到这个javascript而不是我的小测验文本

how to add an image to this javascript instead of text for my trival quiz

本文关键字:我的 文本 javascript 图像 添加      更新时间:2023-09-26

我在我的网站上有这个测试,我想知道不管怎样,你可以选择一张图片来代替文字答案,真的希望我的多选题答案是在图像的形式,而不是!请帮助! !

$(document).ready(function () {
    $(".reset").click(function() {
    location.reload(true);
});
    $(".start").click(trivia);
    function trivia() {
        var scoreAry = [];
        var questions = [{
            q: "What is the name of the Paranoid Android in Douglas Adams’ ‘Hitchhiker’s Guide to the Galaxy’?",
            s: ["Andy", "Bob", "Susan", "Marvin"],
            a: "Marvin",
            correct: 0
        }, {
            q: "In Monopoly, the green set consists of Pacific Avenue, North Carolina Avenue and which other?",
            s: ["Oxford Street", "Pennsylvania Avenue", "Park Place", "New York Avenue"],
            a: "Pennsylvania Avenue",
            correct: 0
        }, {
            q: "Who created Snoopy?",
   s: ["George Herriman", "Charles M. Schulz", "Jim Davis", " Garry Trudeau"],
            a: "Charles M. Schulz",
            correct: 0
        }, {
            q: "What was the name of the tallest Warner brother in Animaniacs?",
            s: ["Dot", "Yakko", "Wacko", "Pinky"],
            a: "Yakko",
            correct: 0
        }, {
            q: "After how many years would you celebrate your crystal anniversary?",
            s: ["5", "10", "15", "20"],
            a: "15",
            correct: 0
        }, {
            q: "Which sign of the zodiac would you be if your birthday was on October 18?",
            s: ["Virgo", "Cancer", "Libra", "Pices"],
            a: "Libra",
            correct: 0
        }, {
            q: "Which birthstone is associated with the month of May?",
            s: ["Diamond", "Peridot", "Sapphire", "Emerald"],
            a: "Emerald",
            correct: 0
        }, {
            q: "What is the capital city of Afghanistan?",
            s: ["Istanbul", "Constantinople", "Kabul", "Ghazni"],
            a: "Kabul",
            correct: 0
        }, {
            q: "In which country is Mount Everest?",
            s: ["The Himalayas", "Nepal", "Tibet", "India"],
            a: "Nepal",
            correct: 0
        }, {
            q: "What is the abbreviation for Potassium in the Periodic Table of Elements?",
            s: ["Po", "Pa", "K", "Ps"],
            a: "K",
            correct: 0
        }];
        var counter = questions.length;
        //This grabs the question and answer data from the questions array and appends it to the #questions div:
        function createQuestion(questions) {
            for (var i = 0; i < questions.length; i++) {
                $(".start").hide();
                $("#questions").append('&lt;form id="' + i + '" class="center-text"><p>Question ' + (i + 1) + ' of ' + questions.length + '</p><h3 class="question">' + questions[i].q + '</h3>' + radioButtons(questions[i].s, i) + '&lt;button type="submit" class="next">NEXT &#8594;&lt;/button></p>&lt;/form>');
            }
            //This hides all except the first question:
            for (var k = questions.length - 1; k > 0; k--) {
                $('#' + k).hide();
            }
        }
        //This grabs the answer choices from the questions array and returns them to createQuestion():
        function radioButtons(ary, qNum) {
            var answers = [];
            for (i = 0; i < ary.length; i++) {
                answers.push('&lt;label>&lt;input type="radio" name="' + qNum + '" value="' + ary[i] + '">' + ary[i] + '&lt;/label>');
            }
            return answers.join(" ");
        }
        
        //This sums the correct values in the questions array:
        function sumScore(questions) {
            return scoreAry.reduce(function (previousValue, currentValue, index, array) {
                return previousValue + currentValue;
            });
        }
        
        //This checks the user's answer and updates the score:
        function checkAnswer(answer, qNum, questions) {
            if (answer == questions[qNum].a) {
                questions[qNum].correct = 1;
                scoreAry.push(questions[qNum].correct);
            } else {
                scoreAry.push(questions[qNum].correct);
            }
        }
        
        createQuestion(questions);
        
        $(".next").click(function (event) {
            event.preventDefault(); //This stops the form from submitting
            var qNum = $(this).closest("form").attr("id"); //This gives us the question number
            var userInput = $('input[name=' + qNum + ']:radio:checked').val(); //This grabs the user's selected answer
            if (counter > 1) {
                checkAnswer(userInput, qNum, questions);
                $("#" + qNum).hide();
                $("#" + qNum).next().show();
                counter--;
            } else if (counter == 1) {
                checkAnswer(userInput, qNum, questions);
                $("#questions").find("form").remove();
                $("#questions").append('<p class="result"></p>');
                $(".result").text('You answered ' + sumScore(questions) + ' questions correctly out of 10.');
                   for (j = 0; j < scoreAry.length; j++) {
                        if (scoreAry[j] === 0) {
                            console.log(questions[j].q, questions[j].a);
                            var resultClass = "result-" + j;
                            $("#questions").append('<p class="' + resultClass + '">You missed: ' + questions[j].q + ' ' + questions[j].a + '</p>');
                        }
                    }
            } else {
                return false;
            }
        });
    }
body{
font-family: sans-serif;
}
#wrapper { 
width:550px;
margin:20px auto;
}
h1{
text-align:center;
}
.start {
background: #2ECC71;
    color: #FFFFFF;
    cursor: pointer;
    letter-spacing: 1px;
    padding: 10px 10px;
border-radius: 50px;
border: 3px solid #fff;
color: #fff;
width:100%;
font-weight: 700;
}
.start:active {
border-color: #17954c;
color: #17954c;
}
.start:hover {
background: #24b662;
}
.next {
background: #FCAD26;
    color: #FFFFFF;
    cursor: pointer;
    letter-spacing: 1px;
    padding: 10px 0;
border-radius: 50px;
border: 3px solid #fff;
color: #fff;
margin-top:20px;
display:block;
width:100%;
font-weight: 700;
}
.next:active {
border-color: #F58500;
color: #222;
}
.next:hover {
background: #F29E0D;
}
.reset {
border: none;
background: none;
cursor: pointer;
padding: 10px 20px;
display: inline-block;
margin:145px 1030px;
text-transform: uppercase;
letter-spacing: 1px;
outline: none;
-webkit-transition: all 0.3s;
-moz-transition: all 0.3s;
transition: all 0.3s;
border-radius: 40px;
background: none repeat scroll 0 0 #CB4E4E;
box-shadow: 0 6px #AB3C3C;
color: #FFFFFF;
}
.reset:hover {
box-shadow: 0 4px #ab3c3c;
top: 2px;
}
.reset:active {
box-shadow: 0 0 #ab3c3c;
top: 6px;
}
<button name="reset" id="reset" class="reset">Reset</button>
<div id="wrapper">
<h1>Welcome to Trivia!</h1>
<button type="button" class="start" value="start">START</button>
<div id="questions">
</div>
</div>
<!--wrapper-->
    <script src='http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js'></script>
        <script src="js/index.js"></script>

添加图片url:

  {
            q: "In Monopoly, the green set consists of Pacific Avenue, North Carolina Avenue and which other?",
            s: ["Oxford Street", "Pennsylvania Avenue", "Park Place", "New York Avenue"] // add umage urls instead of text and,
            a: "Pennsylvania Avenue",
            correct: 0
        }

function radioButtons(ary, qNum) {
            var answers = [];
            for (i = 0; i < ary.length; i++) {
                answers.push('&lt;label>&lt;input type="radio" name="' + qNum + '" value="' + ary[i] + '"><img src="'+// pass url here//+'"/>' + ary[i] + '&lt;/label>');
            }
            return answers.join(" ");
    }

如果你想要url和name,那么你可以传递{name:"Oxford Street",url:'some url'},而不是传递"Oxford Street"。