Я пытаюсь отключить выделение выделения и контекстное меню (Копировать, Вырезать, Выбрать все и т. д.) полей ввода с помощью JavaScript на гарнитуре Vive Focus VR Android WebView.
Я пробовал следующие решения, но ни одно из них не работает для Vive Focus:
Решение №1:
$.fn.extend({
disableSelection : function() {
this.each(function() {
this.onselectstart = function() {
return false;
};
this.unselectable = "on";
$(this).css('-moz-user-select', 'none');
$(this).css('-webkit-user-select', 'none');
});
}
});
$(function() {
$(this).disableSelection();
});
Решение №2:
function disableSelect(el){
if(el.addEventListener){
el.addEventListener("mousedown",disabler,"false");
} else {
el.attachEvent("onselectstart",disabler);
}
}
function enableSelect(el){
if(el.addEventListener){
el.removeEventListener("mousedown",disabler,"false");
} else {
el.detachEvent("onselectstart",disabler);
}
}
function disabler(e){
if(e.preventDefault){ e.preventDefault(); }
return false;
}
Решение №3:
window.oncontextmenu = function () {return false;};
Решение №4:
function absorbEvent_(event) {
var e = event || window.event;
e.preventDefault && e.preventDefault();
e.stopPropagation && e.stopPropagation();
e.cancelBubble = true;
e.returnValue = false;
return false;
}
function preventLongPressMenu(node) {
node.ontouchstart = absorbEvent_;
node.ontouchmove = absorbEvent_;
node.ontouchend = absorbEvent_;
node.ontouchcancel = absorbEvent_;
}
function init() {
preventLongPressMenu(document.getElementById('theimage'));
}
Я разместил еще один вопрос (Как удалить выделение выделения для ввода поле в CSS?) связано с использованием CSS для достижения этой цели, но, к сожалению, это не отключает меню выбора/контекста в Vive Focus для полей ввода.
Не могли бы вы помочь мне с этим?
Спасибо