我正在尝试将重点放在输入字段上。我已经推荐了这个solution
它在chrome浏览器和android设备上都可以正常工作,但在Safari和ios设备(在iPhone 6和6s上测试)上都不能正常工作。
这是我的.html文件
<ion-input #focusInput type="tel" placeholder="Phone Number"></ion-input>
<button type="button" onclick="setFocusByclick(focusInput)">Set Focus</button>
这是我的.ts文件
@ViewChild('focusInput') myInput;
// @ViewChild('focusInput') myInput: ElementRef; //this also doesnt work in ios
ionViewDidLoad() {
setTimeout(() => {
if (this.device.platform == 'Android') {
Keyboard.show() // for android
}
this.myInput.setFocus();
// this.myInput.nativeElement.focus(); //this also doesnt work in ios
},1000);
}
setFocusByclick(input) {
input.setFocus(); //this works very well onclicking
}
好吧,单击按钮时传递输入元素引用在每个平台上都可以正常工作,但是我想在没有任何用户交互的情况下设置焦点。 ViewChild是获取元素引用的解决方案,但在 iOS和Safari
中不起作用