我正在使用PhoneGap在IOS中构建应用程序,这几乎已经完成。
我遇到了一个小问题。用户似乎无法在输入字段中复制/浏览其内容。
我正在使用
答案 0 :(得分:14)
尝试添加此css
input, textarea {
-webkit-user-select: auto !important;
-khtml-user-select: auto !important;
-moz-user-select: auto !important;
-ms-user-select: auto !important;
-o-user-select: auto !important;
user-select: auto !important;
}
我认为离子包括一些css以避免复制/粘贴,因为通常应用程序不允许您复制其内容
答案 1 :(得分:1)
基于@jcesarmobile回答。这对我有用。 Ionic 2,beta 10。
.selectable{
-webkit-user-select: auto;
-khtml-user-select: auto;
-moz-user-select: all;
-ms-user-select: auto;
-o-user-select: auto;
user-select: auto;
}
答案 2 :(得分:0)
Kludgy,仅限台式机,但我使用的是这样的:
.directive('selectable', [function () {
return {
restrict: 'A',
priority: 2000,
link: function (scope, ele, attrs) {
var element = ele[0];
function leave() {
element.blur();
element.setAttribute('contenteditable', 'false');
}
function keydown(e){
switch(e.which) {
case 33: // pageup
case 34: // pagedown
case 35: // end
case 36: // home
case 37: // left
case 38: // up
case 39: // right
case 40: // down
case 16: // shift
case 17: // ctrl
case 91: // meta
return;
default:
//CTRL-A /CTRL-C?
if((e.keyCode === 'C'.charCodeAt(0) || e.keyCode === 'A'.charCodeAt(0)) && (e.ctrlKey || e.metaKey)) {
return;
}
console.log(e);
break;
}
leave();
}
function mouseDown(){
element.setAttribute('contenteditable', 'true');
}
element.addEventListener('mousedown', mouseDown);
element.addEventListener('keydown', keydown);
element.addEventListener('cut', leave);
element.addEventListener('paste', leave);
ele.on('$destroy', function () {
element.removeEventListener('mousedown', mouseDown);
element.removeEventListener('keydown', keydown);
element.removeEventListener('cut', leave);
element.removeEventListener('paste', leave);
});
}
};
}])
如果你愿意编辑ionicXXX.js,你也可以在他们检查isContentEditable的任何地方检查一个类或属性......
答案 3 :(得分:0)
我遇到了同样的问题,并在我的应用中使用加载面板
@Adam提供的css修复工作
.backdrop { display: none; }
.backdrop.visible { display: block; }
.loading-container:not(.visible) { display: none; }