Отключение выбора текста в PhoneGap

Можно ли отключить выбор текста, чтобы сделать приложение PhoneGap более похожим на обычное родное приложение?

Что-то вроде этого:

document.onselectstart = function() {return false;} 

или:

 * { user-select: none; -moz-user-select: -moz-none; -khtml-user-select: none; -webkit-user-select: none; } 

Или многое другое не работает.

Я посмотрел на все это. Это, наконец, сработало для меня.

 public class MainActivity extends DroidGap { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); super.loadUrl("file:///android_asset/www/index.html"); super.appView.setOnLongClickListener(new View.OnLongClickListener() { public boolean onLongClick(View v) { return true; } }); } } 

SetOnClickListener – это то, что делает волшебство. Убедитесь, что вы поставили это ПОСЛЕ вашего вызова на super.loadUrl.

Конечно, это отключит выбор текста для всего вашего приложения, но я в порядке с этим, и пока у меня нет другого пути.

Я не уверен в том, что это все еще имеет значение, но я использую событие JqueryMobile «taphold», и он все еще отлично работает. Я считаю, что это работает, обращаясь к длинному клику на appView (который размещает ваше приложение HTML) и не позволяет ему пузыриться.

Помещение на html , а не * , работает для меня:

 html { -webkit-user-select: none; } 

Как и то, что упоминалось в ThinkingStiff, я также использую следующее, чтобы удалить любую подсветку / копировать и вставлять

 -webkit-touch-callout: none; -webkit-tap-highlight-color: rgba(0,0,0,0); 

Это тоже сработает.

 <body oncontextmenu="return false" ondragstart="return false" onselectstart="return false"> 

Добавьте это и наслаждайтесь. Работает и на iOS.

 <style type="text/css"> *:not(input,textarea) { -webkit-touch-callout: none; -webkit-user-select: none; /* Disable selection/Copy of UIWebView */ } </style> 

Недавно был обновлен до Android 4.4 kitkat, и он решил проблему появления Edittext на taphold (длинное нажатие). По-видимому, edittext не отображается на taphold с jQuery mobile и phonegap на Android 4.4. Я использую пользовательский носитель aosp, поэтому не тестировался в официальном выпуске, но я угадываю (и надеюсь), что он должен работать и для любого выпуска 4.4. Это также, похоже, разрешило другие конфликты, которые у меня были с onclick, которые я опубликовал ниже.

Пожилым методам я обнаружил, что работает (с возможными проблемами) для более старых ролей ICS (только для 4.0.4 пользовательских ромов).
Добавив панель прокрутки

пример:

 <div id="scroll">content</div> <style> #scroll { height: 100%; width: 100%; } </style> 

Это отключает EditText от popping on taphold (длинное нажатие) для телефонной заставки и мобильного jQuery. Не уверен, что если это вызовет какие-либо конфликты (как кажется, некоторые эффекты с onclick, которые ищут для сортировки), но с регулярным текстом, должны хорошо работать .– – Проблемы разобрались с Android 4.4 и больше не нужно прокручивать. (См. Верхнюю часть сообщения)

Для меня это было лучше всего:

 -webkit-tap-highlight-color: rgba(0,0,0,0); tap-highlight-color: rgba(0,0,0,0); 

Мой случай произошел с pixi.js, с

 plugins.interaction.autoPreventDefault = true; 
 * { -webkit-touch-callout: none; -webkit-user-select: none; } [contenteditable="true"] , 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; } 
Intereting Posts
Как отсортировать HashMap как добавленный в Android с ArrayAdapter Android-приложение сразу после загрузки Максимальное количество потоков Android Как использовать SharedPreferences в Android для хранения, извлечения и редактирования значений Как просмотреть стиль android simple_spinner_dropdown_item по умолчанию Как увеличить скорость загрузки активности? Календарное событие сохраняется локально на телефоне, но не может синхронизироваться с Календарем Google. Как создать представление, подобное области системных уведомлений в android? Android возвращает данные в предыдущую активность Android – поддержка SCORM API между двумя веб-просмотрами Запустить код javascript в Webview Сохранить информацию о пользователе facebook для использования в другой деятельности Девять-патч против векторной графики Каково влияние чтения на Акселерометр на батарею? Получить список активных PendingIntents в AlarmManager