`
jsntghf
  • 浏览: 2543824 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

IOS与JavaScript的交互

    博客分类:
  • iOS
阅读更多

UIWebView是iOS中最常用的SDK之一,它有一个stringByEvaluatingJavaScriptFromString方法,可以将javascript嵌入页面中,通过这个方法我们可以在iOS中与UIWebView中的网页元素交互。

 

使用stringByEvaluatingJavaScriptFromString方法,需要等UIWebView中的页面加载完成之后去调用。我们在界面上拖放一个UIWebView控件。在viewDidLoad中将google加载到这个控件中,代码如下:

 

- (void)viewDidLoad {
    [super viewDidLoad];
	
	webview.backgroundColor = [UIColor clearColor];  
    webview.scalesPageToFit = YES;
    webview.delegate = self;
	
    NSURL *url =[[NSURL alloc] initWithString:@"http://www.google.com.hk/m?gl=CN&hl=zh_CN&source=ihp"];	
    NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url];
	[url release];
    [webview loadRequest:request]; 
	[request release];	
}

 

在webViewDidFinishLoad方法中通过javascript操作界面元素:

 

- (void) webViewDidFinishLoad:(UIWebView *)webView{
	[webView stringByEvaluatingJavaScriptFromString:@"var script = document.createElement('script');"  
	 "script.type = 'text/javascript';"  
	 "script.text = \"function searchFunction() { "  
	 "var field = document.getElementsByName('q')[0];"  
	 "field.value='高海峰';"  
	 "document.forms[0].submit();"  
	 "}\";"  
	 "document.getElementsByTagName('head')[0].appendChild(script);"];   
	
	[webView stringByEvaluatingJavaScriptFromString:@"searchFunction();"];  
}

 

1、首先创建一个script的标签,type为text/javascript。

2、然后在这个标签中插入一段字符串,这段字符串就是一个函数:searchFunction,这个函数实现google自动搜索关键字的功能。

3、然后使用stringByEvaluatingJavaScriptFromString执行searchFunction函数。

分享到:
评论

相关推荐

    IOS WebView与JavaScript交互实现Web App

    本篇文章将深入探讨如何在iOS中使用`UIWebView`加载bundle内的HTML文件,并实现WebView与JavaScript的交互。 首先,我们需要了解`UIWebView`的基本用法。`UIWebView`是一个视图类,可以显示和加载网页内容。我们...

    iOS和JS的交互

    本篇将深入探讨iOS与JavaScript交互的机制、方法以及实际应用场景。 首先,我们要理解的是,iOS原生应用主要由Objective-C或Swift编写,而JavaScript则作为Web前端的主要语言。为了实现两者之间的通信,我们需要一...

    iOS中与JavaScript交互

    在iOS应用开发中,与JavaScript交互是一个常见的需求,特别是在构建混合型应用或者需要在原生应用内嵌入网页内容时。本知识点主要聚焦于如何在iOS应用中利用UIWebView组件来实现JavaScript与Objective-C(简称Oc)...

    iOS和H5页面交互拦截

    在移动应用开发中,iOS与H5页面的交互是一个重要的技术环节,特别是在混合式应用开发中,这种交互机制显得尤为关键。本主题将详细讲解如何实现iOS与H5页面之间的事件拦截和实时通信。 首先,iOS与H5交互的基础是...

    UIWebView与 javascript的交互

    在iOS开发中,UIWebView是苹果提供的一种原生控件,用于在应用内展示网页内容。这个"UIWebView与...通过理解并实践UIWebView的JavaScript交互机制,开发者可以创建出既具有Web动态性又具备原生应用性能的iOS应用。

    note-on-iOS-work-with-[removed]iOS 和 JavaScript 交互几种方式的 demo:UIWebView,JavaScript,WKWebView

    总结一下,iOS与JavaScript交互的三种主要方式包括: 1. UIWebView:旧的解决方案,性能较低,但简单易用。 2. WKWebView:现代的选择,性能优越,安全性更高,支持更复杂的交互。 3. JavaScriptCore:提供底层...

    ios webview js交互

    以下将详细阐述iOS Webview与JavaScript交互的核心概念、实现方式以及相关知识点。 1. **基本概念:** - **UIWebView**:苹果提供的原生组件,可以加载HTML、CSS和JavaScript内容,构建一个在iOS应用内部运行的Web...

    iOS的web 与 js 交互

    本教程将详细探讨iOS中的Web与JavaScript交互的四种方法,以帮助开发者更好地理解和利用这一特性。 首先,我们要知道`UIWebView`和`WKWebView`是iOS中用于加载和展示网页内容的组件。`UIWebView`是早期的选项,而`...

    最全的ios的weiview

    2. **iOS与JavaScript交互** - `- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType`代理方法用于拦截网页的加载...

    ios webView与js的交互

    与JavaScript交互时,必须确保安全,避免恶意代码的注入。对于接收的数据,应进行验证和清理,避免XSS(跨站脚本攻击)。 7. **性能优化** 使用WKWebView代替UIWebView可以获得更好的性能和内存管理。另外,合理...

    ios-webView与js的交互.zip

    总的来说,“ios-webView与js的交互.zip”这份资料涵盖了WebView与JavaScript交互的基础知识,包括UIWebView和WKWebView的使用,以及如何通过用户内容控制器进行消息传递。通过学习这些内容,开发者可以更好地在iOS...

    iOS 使用WebViewJavascriptBridge与h5交互

    下面我们将详细讨论如何使用`WebViewJavascriptBridge`来实现iOS与H5的交互。 首先,`WebViewJavascriptBridge`的核心功能是建立一个桥梁,让Objective-C或Swift代码能够调用JavaScript函数,并且JavaScript也能...

    iOS javascript engine demo project

    在iOS开发中,JavaScript引擎是实现与JavaScript交互的关键技术,特别是在构建混合应用或者需要在原生应用中执行JavaScript代码的场景。本项目“iOS javascript engine demo project”专注于演示如何在iOS应用中集成...

    ios 原生与js交互

    ios7之后,ios中加入了JavaScriptCore框架。该框架让Objective-C和JavaScript代码直接的交互变得更加的简单方便。ios 原生与js交互,demo代码,其中包括利用JSBinding简单使用!

    iOS与H5界面JSBridge交互Demo

    在iOS开发中,有时我们需要将原生应用的功能与网页(H5)进行深度融合,这就涉及到iOS与H5界面之间的JSBridge交互。这个"iOS与H5界面JSBridge交互Demo"提供了一个直观且易于理解的实例,帮助开发者快速掌握两者间的...

    iOS原生H5交互开发

    总的来说,这个主题涵盖了iOS原生应用中集成H5页面的关键技术,包括WebView的使用、JavaScript与OC的通信机制,以及实际交互的实现细节。通过深入理解和实践这些知识点,开发者可以构建出既美观又功能强大的混合式...

    ios-HTML与原生界面交互.zip

    `ios-HTML与原生界面交互.zip`中的资源,特别是`WebViewJavascriptBridgeDemo`,是一个典型的示例,用于演示如何在iOS应用中使用WebView与JavaScript进行通信。 首先,我们要理解什么是WebView。WebView是iOS SDK中...

    js与iOS交互.zip

    10. **实践案例**: "js与iOS交互.zip"可能包含实际的代码示例,展示如何在iOS应用中集成JavaScript代码,以及如何处理复杂的交互场景。 这个资料包将帮助开发者深入理解如何在iOS应用中有效地使用JavaScript,实现...

    js与iOS的交互

    两者都提供了与JavaScript交互的API。 对于UIWebView,主要使用`stringByEvaluatingJavaScriptFromString:`方法执行JavaScript代码,并通过代理方法`webView:didFinishLoad:`来判断页面是否加载完成。例如,你可以...

    ios与js交互,获取webview完整url,title,获取元素并赋值跳转

    3. **与JavaScript交互**: 使用`evaluateJavaScript`方法可以执行JavaScript代码,并获取其结果。例如,如果想要获取某个DOM元素的值,可以这样操作: ```swift let script = "document.getElementById('...

Global site tag (gtag.js) - Google Analytics