I don't particularly like the look and feel of the standard alert message but you can't argue about the ease of use.
Fortunately it is easy to change the look and feel. I do this by overwriting the native alert method. You can do the same thing in web apps but IE whines about it being a security violation. At least in Phonegap apps running on iOS there is no problem. I have not tested it on Android.
Notice that I am redefining the native alert method.
I have the following in the html page.
</div><!-- /header -->
<div data-role="content" data-theme="e">
<a href="#" data-role="button" data-theme="b" data-inline="true" id="alertclose">Ok</a>
<a href="#alertid" data-rel="dialog" id="alertbutton" style="display:none"></a>
</div><!--END OF jqMobile Content Div-->
The hidden button just gives me a simple way to open the dialog. Notice that I trigger a click on it when the alert method is called.
That is all there is to it. The remainder of your code just calls alert as appropriate.
A couple of screen shots to illustrate. When the user clicks on the tweet icon the code verifies that Twitter is set up on the device. If not we raise an alert.