我在使用输入文字的Crosswalk时遇到了一些麻烦。
当我写东西并删除它时,输入并不完全清除。因此,当我再次写一些内容时,旧文本出现在我的输入中......
例如,当我写" Cordova"并删除这个单词,然后我写了#34;是最好的",写完后#34;是"它给了我"是Cordovabest"。
在安装Crosswalk之前,我没有遇到此问题。任何解决方案?
答案 0 :(得分:0)
我遇到了同样的问题并将其作为指令使用(现在只是制作它,因此未经过广泛测试)。在清空输入时,它会创建一个新的输入来聚焦(只是模糊(ing)没有做太多),然后重新关注原始输入:
angular.module('yourmodule')
.directive('autocomplete', function($timeout) {
return {
restrict: 'A',
scope: {
autocomplete: '='
},
link: function(scope, element, attrs) {
function createInputFocus(origField) {
origField.blur();
var field = document.createElement('input');
field.setAttribute('type', 'text');
document.body.appendChild(field);
$timeout(function() {
field.focus();
$timeout(function() {
field.blur();
document.body.removeChild(field);
$timeout(function() {
origField.focus();
}, 100);
}, 100);
});
}
if (attrs.autocomplete === 'off') {
element[0].addEventListener('keyup', function(e) {
if (element[0].value !== undefined && !element[0].value.length) {
createInputFocus(element[0]);
}
return false;
});
}
}
};
});
<input autocomplete="off">
似乎为我做了诀窍!