我具有创建和激活文本字段的功能:
if ( [first - second, first - third , second - third].some(n => Math.abs(n) >=2 ) )
效果很好,但是我还有另一个事件,如果有人按下Enter键,我想选择并创建下一个字段:
function createInput( button, val ) {
if (button.children().length == 0) {
button.html('<input type="text" class="form-control newField" size="7" maxlength="3">');
button.children('input').val(val);
button.children('input').select();
}
}
它起作用,它创建新的文本字段,但不激活该字段。看起来select()函数不起作用。
是否有机会激活此字段?
答案 0 :(得分:0)
据我了解,您希望每次用户按下Enter键时,将带有用户输入的元素放置到页面上。
这是一个可行的示例:
var container = document.getElementById('container');
var input = document.getElementById('input');
input.addEventListener('keydown', function(event) {
// If the key being pressed is ENTER and the input element isn't empty
if (event.keyCode === 13 && input.value) {
// Create the element
var element = document.createElement('div');
element.setAttribute('class', 'btn');
element.innerHTML = input.value;
// Insert onto the page
container.appendChild(element);
// Clear the input element
input.value = "";
input.scrollIntoView();
}
});
.btn {
background-color: black;
display: inline-block;
border-radius: 4.3px;
color: white;
font-family: Helvetica;
margin-bottom: 4.3px;
box-sizing: border-box;
padding: 14px;
float: left;
clear: both;
}
#container:after {
clear: both;
content: "";
display: block;
}
<div id="container">
</div>
<input id="input" placeholder="Type here, when done press [ENTER] Key">