js 中的alert title 在 iOS 中如何消失

来源:互联网 发布:青稞的网络意思 编辑:程序博客网 时间:2024/06/14 07:47

在iOS app 中经常会嵌套html 代码, 然后  js 的alert 的title 怎么修改呢,不修改的话很丑陋,用户无法接受。如下:


 但是现在有了好的办法就是用 iOS native 的uiwebview 的扩展方法来监听 js的alert 然后自定义 alert 的title ,如下:



这样就可以自定义, 也比较好看了。

方法是 在 你加在webview 的 m 方法中加入:

@interface UIWebView (JavaScriptAlert)- (void)webView:(UIWebView *)sender runJavaScriptAlertPanelWithMessage:(NSString *)message initiatedByFrame:(WebFrame *)frame;@end@implementation UIWebView (JavaScriptAlert)- (void)webView:(UIWebView *)sender runJavaScriptAlertPanelWithMessage:(NSString *)message initiatedByFrame:(WebFrame *)frame {            UIAlertView* customAlert = [[UIAlertView alloc] initWithTitle:@"我是JS Alert"                                                          message:message                                                         delegate:nil                                                cancelButtonTitle:@"确定"                                                otherButtonTitles:nil];        [customAlert show];    [customAlert release];    }@end

这样就ok了! 哈哈!

html 代码 :

<html><head>  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />   <title>Webview document</title>    <script type="text/javascript">        function change_header()        {            alert("不错的一天");        }     </script></head><body style="background-color:transparent; color:white;">    <h4>UIWebView HTML document</h4>    <button onclick="change_header()">按钮</button></body></html>



原创粉丝点击