我似乎在选择输入字段中的所有文本时遇到了特定于Edge的问题。我正在使用角度焦点调用控制器中的函数来选择字段中的所有文本。
function selectAllTextOnFocus($event) {
$event.target.select();
}
除Microsoft Edge之外的所有浏览器都可以正常工作,它不会在输入字段中选择文本。
除了第一次选择输入字段外,我还尝试了另一种jQuery解决方案。之后,它按预期工作,并选择所有文本。
$('input').on('focus', function (e) {
$(this).one('mouseup', function () {
$(this).select();
return false;
}).select();
});
这只是Microsoft Edge的已知问题,还是我遗漏了什么?
答案 0 :(得分:6)
我是Microsoft Edge团队的工程师,并查看您所指的问题。目前,您可以在短暂延迟后调用选择方法:
function selectAllTextOnFocus($event) {
// See https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/8229660/
if ( navigator.userAgent.match(/Edge\/(13|14|15|16|17)/) ) {
return setTimeout( $event.target.select.bind( $event.target ), 10)
}
$event.target.select();
}
在此测试两种方法:https://jsfiddle.net/jonathansampson/xe9x9s7b/
我冒昧地在a public bug上提交http://bugs.microsoftedge.com进行跟踪。