一旦我的页面加载,我就会集中用户输入第一个数字到otp。当我通过jquery执行此操作时,默认情况下,num键盘不可见。如果我关注,我手动运行,我得到num键盘。如何解决这个问题?
这是我的代码:
setTimeout(function(){
Ember.$('.digit0').focus();
}, 100 );
我的HTML:
{{#each cardDigitField as |field index| }}
<input type="number" tabindex="{{count}}" min="0" max="9" maxlength="1" value=''
pattern="[0-9]*" inputmode="numeric"
onKeyUp={{action "numberEntered" index }}
onKeyPress={{action "numberInit" }}
onPaste={{action "numberPaste" }} class="digit{{index}}" >
{{#if requiredHyphen}}
{{add-hyphen index 4 cardDigitField.length}}
{{/if}}
{{/each}}
答案 0 :(得分:1)
一般setTimeout
和Ember的runloop不能很好地结合在一起。如果你在组件中使用afterRender
钩子然后你的jQuery你有更好的成功吗?