<tfoot id='0Ma0t'></tfoot>

    <i id='0Ma0t'><tr id='0Ma0t'><dt id='0Ma0t'><q id='0Ma0t'><span id='0Ma0t'><b id='0Ma0t'><form id='0Ma0t'><ins id='0Ma0t'></ins><ul id='0Ma0t'></ul><sub id='0Ma0t'></sub></form><legend id='0Ma0t'></legend><bdo id='0Ma0t'><pre id='0Ma0t'><center id='0Ma0t'></center></pre></bdo></b><th id='0Ma0t'></th></span></q></dt></tr></i><div id='0Ma0t'><tfoot id='0Ma0t'></tfoot><dl id='0Ma0t'><fieldset id='0Ma0t'></fieldset></dl></div>
      • <bdo id='0Ma0t'></bdo><ul id='0Ma0t'></ul>
    1. <small id='0Ma0t'></small><noframes id='0Ma0t'>

      <legend id='0Ma0t'><style id='0Ma0t'><dir id='0Ma0t'><q id='0Ma0t'></q></dir></style></legend>
    2. 带有 javascript 的单选按钮样式

      Radio button style with javascript(带有 javascript 的单选按钮样式)
      • <bdo id='iUhIu'></bdo><ul id='iUhIu'></ul>
        • <legend id='iUhIu'><style id='iUhIu'><dir id='iUhIu'><q id='iUhIu'></q></dir></style></legend>

            <small id='iUhIu'></small><noframes id='iUhIu'>

              <tbody id='iUhIu'></tbody>
                <tfoot id='iUhIu'></tfoot>

              1. <i id='iUhIu'><tr id='iUhIu'><dt id='iUhIu'><q id='iUhIu'><span id='iUhIu'><b id='iUhIu'><form id='iUhIu'><ins id='iUhIu'></ins><ul id='iUhIu'></ul><sub id='iUhIu'></sub></form><legend id='iUhIu'></legend><bdo id='iUhIu'><pre id='iUhIu'><center id='iUhIu'></center></pre></bdo></b><th id='iUhIu'></th></span></q></dt></tr></i><div id='iUhIu'><tfoot id='iUhIu'></tfoot><dl id='iUhIu'><fieldset id='iUhIu'></fieldset></dl></div>
              2. 本文介绍了带有 javascript 的单选按钮样式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                问题描述

                我创建了一个包含单选按钮的测验应用程序,但我希望单选按钮以垂直线显示,周围有框.我尝试通过调用选择 ID 来使用 CSS 执行此操作,但它不起作用.

                I created a quiz app which contains radio buttons but I want the radio button to display in a vertical line with boxes around it. I tried doing this with CSS by calling the choices ID but it did not work.

                我希望它的外观示例:

                而不是这个:

                 var quiz = [{
                          "question": "What is the full form of IP?",
                          "choices": ["Internet Provider", "Internet Port", "Internet Protocol" , "Other"],
                          "correct": "Other"
                        }, {
                          "question": "Who is the founder of Microsoft?",
                          "choices": ["Bill Gates", "Steve Jobs", "Steve Wozniak" , "Martin Shaba"],
                          "correct": "Bill Gates"
                        }, {
                          "question": "What was your first dream?",
                          "choices": ["8 bits", "64 bits", "1024 bits"],
                          "correct": "8 bits"
                        }, {
                          "question": "The C programming language was developed by?",
                          "choices": ["Brendan Eich", "Dennis Ritchie", "Guido van Rossum"],
                          "correct": "Dennis Ritchie"
                        }, {
                          "question": "What does CC mean in emails?",
                          "choices": ["Carbon Copy", "Creative Commons", "other"],
                          "correct": "Carbon Copy"
                        }];
                
                
                // define elements
                var content = $("content"),
                questionContainer = $("question"),
                choicesContainer = $("choices"),
                scoreContainer = $("score"),
                submitBtn = $("submit");
                
                // init vars
                var currentQuestion = 0,
                score = 0,
                askingQuestion = true;
                
                function $(id) { // shortcut for document.getElementById
                  return document.getElementById(id);
                }
                
                function askQuestion() {
                  var choices = quiz[currentQuestion].choices,
                  choicesHtml = "";
                
                  // loop through choices, and create radio buttons
                  for (var i = 0; i < choices.length; i++) {
                    choicesHtml += "<input type='radio' name='quiz" + currentQuestion +
                    "' id='choice" + (i + 1) +
                    "' value='" + choices[i] + "'>" +
                    " <label for='choice" + (i + 1) + "'>" + choices[i] + "</label><br>";
                  }
                
                  // load the question
                  questionContainer.textContent = quiz[currentQuestion].question;
                
                  // load the choices
                  choicesContainer.innerHTML = choicesHtml;
                
                  // setup for the first time
                  if (currentQuestion === 0) {
                    scoreContainer.textContent = "0 correct out of " +
                    quiz.length + "";
                   // submitBtn.textContent = "Submit Answer";
                  }
                
                  var radios = document.querySelectorAll('input[type=radio]');
                  [].forEach.call(radios, function(radio) {
                    radio.onchange = function() {
                      checkAnswer();
                    }
                  })   
                }
                
                function checkAnswer() {
                  // are we asking a question, or proceeding to next question?
                  if (askingQuestion) {
                   // submitBtn.textContent = "Next Question";
                    askingQuestion = false;
                
                    // determine which radio button they clicked
                    var userpick,
                    correctIndex,
                    radios = document.getElementsByName("quiz" + currentQuestion);
                    for (var i = 0; i < radios.length; i++) {
                      if (radios[i].checked) { // if this radio button is checked
                        userpick = radios[i].value;
                      }
                
                      // get index of correct answer
                      if (radios[i].value == quiz[currentQuestion].correct) {
                        correctIndex = i;
                      }
                    }
                
                    // setup if they got it right, or wrong
                
                    if (userpick == quiz[currentQuestion].correct) {
                      score++;
                    } else {
                    }
                
                    scoreContainer.textContent = "" + score + " correct out of " +
                    quiz.length + "";
                
                
                    askingQuestion = true;
                    // change button text back to "Submit Answer"
                    //submitBtn.textContent = "Submit Answer";
                    // if we're not on last question, increase question number
                    if (currentQuestion < quiz.length - 1) {
                      currentQuestion++;
                      askQuestion();
                    } else {
                      showFinalResults();
                    }
                  } else { 
                  }
                }
                
                function showFinalResults() {
                  content.innerHTML = "<h1>You did amazing!</h1>" +
                  "<h5>Below are your results</h5>" +
                  "<h2>" + score + " out of " + quiz.length + " questions, " +
                  Math.round(score / quiz.length * 100) + "%<h2>";
                }
                
                window.addEventListener("load", askQuestion, false);
                submitBtn.addEventListener("click", checkAnswer, false);
                

                CSS:

                #container {
                  max-width:600px;
                  height: auto;
                  background: #59C1DA;
                  border: 10px solid #333;
                  border-radius: 5px;
                  margin: auto;
                  text-align: center;
                }
                
                    #content {
                      border: 10px solid #fff;
                      padding: 15px;
                      color: #fff;
                    #question {
                      font-weight: bold;
                    }
                    #score {
                      margin-top: 20px;
                      font-weight: bold;
                    }
                

                按钮不居中:

                推荐答案

                您可以仅使用 CSS 在当前 HTML 结构中执行此操作.这是一个例子:

                You can do this in your current HTML structure using CSS only. Here's an example:

                input[type="radio"] {
                  display: none;
                }
                input[type="radio"] + label {
                  border: 5px solid lightblue;
                  background-color: lightblue;
                  cursor: pointer;
                  display: block;
                  height: 40px;
                  width: 200px;
                  text-align: center;
                  line-height: 40px;
                }
                input[type="radio"]:checked + label {
                  border: 5px solid blue;
                  background-color: dodgerblue;
                }

                <input id="banana" type='radio' name="quiz" value="banana">
                <label for="banana">Banana</label>
                <input id="apple" type='radio' name="quiz" value="apple">
                <label for="apple">Apple</label>
                <input id="strawberry" type='radio' name="quiz" value="strawberry">
                <label for="strawberry">Strawberry</label>
                <input id="orange" type='radio' name="quiz" value="orange">
                <label for="orange">Orange</label>

                这篇关于带有 javascript 的单选按钮样式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

                相关文档推荐

                keeping radio buttons checked after form submit(表单提交后保持选中单选按钮)
                Styling radio button - not work in IE and Firefox(样式单选按钮 - 在 IE 和 Firefox 中不起作用)
                Toggle HTML radio button by clicking its label(通过单击标签来切换 HTML 单选按钮)
                Javascript how to change radio button label text?(Javascript如何更改单选按钮标签文本?)
                JavaScript radio button confirmation(JavaScript 单选按钮确认)
                How can I automatically select specific radio buttons with Greasemonkey?(如何使用 Greasemonkey 自动选择特定的单选按钮?)

              3. <small id='jTx4A'></small><noframes id='jTx4A'>

                    <tbody id='jTx4A'></tbody>

                    <tfoot id='jTx4A'></tfoot>

                      <bdo id='jTx4A'></bdo><ul id='jTx4A'></ul>
                      • <legend id='jTx4A'><style id='jTx4A'><dir id='jTx4A'><q id='jTx4A'></q></dir></style></legend>

                          <i id='jTx4A'><tr id='jTx4A'><dt id='jTx4A'><q id='jTx4A'><span id='jTx4A'><b id='jTx4A'><form id='jTx4A'><ins id='jTx4A'></ins><ul id='jTx4A'></ul><sub id='jTx4A'></sub></form><legend id='jTx4A'></legend><bdo id='jTx4A'><pre id='jTx4A'><center id='jTx4A'></center></pre></bdo></b><th id='jTx4A'></th></span></q></dt></tr></i><div id='jTx4A'><tfoot id='jTx4A'></tfoot><dl id='jTx4A'><fieldset id='jTx4A'></fieldset></dl></div>