本例子是為了讓大家能快速開發出OC調用JS功能的一個簡單的例子。
1、准備一個本地化的html網頁,如jsIOS.html
js調用oc <script type="text/javaScript"> function postStr(){ return document.getElementById("text1").value; //return "javaScript返回值啦"; } </script>
3、拖一個UIWebView控件和UIButton控件到xxxViewController對應的.xib或.storyboard視圖的UIView上;
在xxxViewController的.h文件中分別聲明UIWebView類型變量和UIButton類型的變量,以及一個按鈕點擊事件(並且跟視圖裡面的控件連線),
並且添加一個UIWebViewDelegate類型的委托。<喎?/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+eHh4Vmlld0NvbnRyb2xsZXIuaM7EvP7E2sjdyOfPwqO6PC9wPgo8cD48L3A+CjxwIGNsYXNzPQ=="p1">
#import@interface ViewController : UIViewController @property(nonatomic,retain) IBOutlet UIWebView *webview; @property(nonatomic,retain) IBOutlet UIButton *button; -(IBAction)IOS_JS:(id)sender; @end
代碼如下:
#import "ViewController.h" @interface ViewController () @end @implementation ViewController @synthesize webview; - (void)viewDidLoad { [super viewDidLoad]; //設置webView webview.backgroundColor = [UIColor clearColor]; //webview.scalesPageToFit =YES; webview.delegate =self; //找到jsIOS.html文件的路徑 NSString *basePath = [[NSBundle mainBundle]bundlePath]; NSString *helpHtmlPath = [basePath stringByAppendingPathComponent:@"jsIOS.html"]; NSURL *url = [NSURL fileURLWithPath:helpHtmlPath]; //加載本地html文件 [webview loadRequest:[NSURLRequest requestWithURL:url]]; } /* * 點擊事件 * 調用javaScript的方法postStr()並取得返回值 * 輸出返回值到控制台 */ -(IBAction)IOS_JS:(id)sender { NSString *str = [self.webview stringByEvaluatingJavaScriptFromString:@"postStr();"]; NSLog(@"JS返回值:%@",str); } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; } @end