我想创建一个带有文本框,使用switch -case和按钮的ID为'divResult'的div的网站。如果单击按钮,它将文本框中的文本显示为标题1 <h1>
,第二次单击后显示为<h2>
等。在6之后,下一个文本(第7个)再次显示为<h1>
。它仅在最后一步(h1-h6中的文本)不起作用时才正确工作。
var txtInput = document.querySelector("#txtElement"),
resultElement = document.querySelector("#divResult"),
ind = 0;
document.querySelector("#btnKnop").onclick = function() {
ind = ind++ === 6 ? 1 : ind;
resultElement.innerHTML += `<h${ind}>${txtInput.value}</h${ind}>`;
}
<input type="text" id="txtElement">
<button id="btnKnop">Add</button>
<div id="divResult"></div>
由于您需要使用switch语句来执行,所以可以像这样:
var txtInput = document.querySelector("#txtElement"),
resultElement = document.querySelector("#divResult"),
countClicks = 1;
document.querySelector("#btnKnop").onclick = function() {
var h = "";
switch(countClicks++) {
case 1: h = "h1"; break;
case 2: h = "h2"; break;
case 3: h = "h3"; break;
case 4: h = "h4"; break;
case 5: h = "h5"; break;
case 6: h = "h6"; countClicks = 1;
}
resultElement.innerHTML += `<${h}>${txtInput.value}</${h}>`;
}
<input type="text" id="txtElement">
<button id="btnKnop">Add</button>
<div id="divResult"></div>