js与webview的交互:stringByEvaluatingJavaScriptFromString的使用方法

1.document.readyState

document.readyState:判断文档是否加载完成。firefox不支持。

这个属性是只读的,传回值有以下的可能:

0-UNINITIALIZED:XML 对象被产生,但没有任何文件被加载。

1-LOADING:加载程序进行中,但文件尚未开始解析。

2-LOADED:部分的文件已经加载且进行解析,但对象模型尚未生效。

3-INTERACTIVE:仅对已加载的部分文件有效,在此情况下,对象模型是有效但只读的。

4-COMPLETED:文件已完全加载,代表加载成功。[_webView stringByEvaluatingJavaScriptFromString:@"document.readyState"];可以判断出当前webview加载状态



我们在webViewDidFinishLoad方法中就可以通过javascript操作界面元素了。


-(void)webViewDidFinishLoad:(UIWebView *)webView

{

    /** 读取结束的时候 */

    if ([[webView stringByEvaluatingJavaScriptFromString:@"document.readyState"] isEqualToString:@"complete"] ||

        [[webView stringByEvaluatingJavaScriptFromString:@"document.readyState"] isEqualToString:@"interactive"])

    {

    }

}


2.window.location.href 用window.location.href的就只能在当前页面打开,不能打开新窗口的

获取当前页面的url。

 1. - (void)webViewDidFinishLoad:(UIWebView *)webView {

 2. NSString *currentURL = [webView stringByEvaluatingJavaScriptFromString:@"document.location.href"];

 3. }


3.  NSString *title = [webview stringByEvaluatingJavaScriptFromString:@"document.title"];





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值