In an iOS app I'm developing, I show an UIWebView
to allow the user to upgrade their account. The page contains links to show the user other informations, but you hold your finger on the link, a menu like this will pop up:
As you can see, it reveals the URL of the page and the action that will be performed, which I do not want the user to see, since I don't want them to be able to copy anything as I disabled the "Copy/Cut/Paste" menu already. How would I go about disabling this menu as well?
Thanks for any pointers.
No need to tell the browser you have a link and then force it not to behave like one!
Just remove the
href="void(0)"
completely!Your
ontouchend
oronclick
attributes will still work.If you want the normal blue/underlined look again, you can add this css:
This saves a lot of CPU cycles, especially when there are hundreds of links in the page while the user is smooth scrolling.
You can also extend this to regular URLs by using this:
Of course your SEO is out the window, but for a specific mobile web app situation this can be crucial.
Happy coding!
I think you can disable that popup by setting the CSS
-webkit-touch-callout
property tonone
on the link. You would do this by editing the HTML or CSS file you're loading, not using Objective-C.If you want to both disable the popup AND user selection of text on your ENTIRE HTML PAGE, use this on the BODY of your web page or global css.
What you want to do, as Rob already stated, is to disable the default contextual menu of
UIWebView
. You can achieve it by adding the following line towebViewDidFinishLoad: