Ответ 1
Я думаю, вы можете отключить это всплывающее окно, установив свойство CSS -webkit-touch-callout
в ссылку none
. Вы сделали бы это, отредактировав загружаемый файл HTML или CSS, а не используя Objective-C.
В приложении iOS, которое я разрабатываю, я показываю UIWebView
, чтобы позволить пользователю обновить свою учетную запись. Страница содержит ссылки, чтобы показать пользователю другую информацию, но вы держите палец по ссылке, появится следующее меню:
Как вы можете видеть, он показывает URL-адрес страницы и действие, которое будет выполняться, что я не хочу видеть у пользователя, так как я не хочу, чтобы они могли копировать что-либо, поскольку я отключил "Копировать/Вырезать/Вставить". Как я могу отключить это меню?
Спасибо за любые указатели.
Я думаю, вы можете отключить это всплывающее окно, установив свойство CSS -webkit-touch-callout
в ссылку none
. Вы сделали бы это, отредактировав загружаемый файл HTML или CSS, а не используя Objective-C.
Что вы хотите сделать, поскольку Rob уже указано, это отключить контекстное меню по умолчанию UIWebView
. Вы можете достичь этого, добавив следующую строку в webViewDidFinishLoad:
[webView stringByEvaluatingJavaScriptFromString:@"document.body.style.webkitTouchCallout='none';"];
Если вы хотите отключить всплывающее всплывающее окно И текста на ENTRE HTML PAGE, используйте это на ТЕЛО на своей веб-странице или глобальном css.
body {
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
Не нужно указывать браузеру, что у вас есть ссылка, а затем заставить его не вести себя как один!
Просто удалите href="void(0)"
полностью!
Ваши атрибуты ontouchend
или onclick
будут по-прежнему работать.
Если вам нужен обычный синий/подчеркнутый внешний вид, вы можете добавить этот css:
a .originalLink { color: blue; text-decoration: underline; cursor: pointer; }
Это экономит много циклов процессора, особенно когда на странице есть сотни ссылок, в то время как пользователь плавно прокручивается.
Вы также можете распространять это на обычные URL-адреса, используя это:
<a class="originalLink" onclick="location.href='http://mylink';">Real URL Link</a>
Конечно, ваш SEO выходит из окна, но для конкретной ситуации с мобильным веб-приложением это может иметь решающее значение.
Счастливое кодирование!