Jascript OC交互

这篇博文
主要讲述 在ios中 有一个非常重要的控件WebView
这个控件是用来直接加载网络数据 那我们加载这些网络数据 不可避免的需要对其上面的一些控件进行操作
一个网页是由这几部分构成的:
HTML – 负责页面元素的显示 按钮 输入框 链接
CSS(层叠样式表) – 负责页面元素的样式 长什么样子 阴影 下划线 高亮
JavaScript – 负责用户交互 以及数据请求 响应事件

每个部分用到各自的语言
我们取这些控件当然就需要和JavaScript 交互 下面几张截图分别表示了我们怎么拿到网页的内容 控件 并实现交互

拿到标题/网址
所有相同节点名
实现按钮自动跳转
id拿控件并赋值
关于通过id拿到控件 还有一个问题
有时候这个控件可能没有id 比如右边输入框没有id
这时候我们应该怎么取得这个输入框呢
我们可以通过最外面节点比如input取得一个节点数组
然后通过下标取得特定的控件

iOS调用JavaScript代码 :

view didload
self.webView.hidden=YES;


view didfinishload


    [self.webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByClassName('share_mask js-share-mask')[0].style.display='none'"];
    可以用dispatch_after
    self.webView.hidden=NO;

达到隐藏某个控件的效果

UIScreenEdgePanGestureRecognizer *pan=[[UIScreenEdgePanGestureRecognizer alloc]initWithTarget:self action:@selector(back:)];
    pan.edges=UIRectEdgeLeft;
    [self.view addGestureRecognizer:pan];
    添加界面左边和右边手势
左边和右边手势   实现方法
返回和到下一个界面

-(void)back:(UIScreenEdgePanGestureRecognizer *)pan{

    if ([self.webView canGoBack]) {
        [self.webView goBack];
    }

    if ([self.webView canGoForward]) {
        [self.webView goForward];
    }

}
记得遵循UIWebViewDelegate协议  设置delegate哦

用WKwebView 需要包含WebKit 这个消耗内存比UIWebView少很多 用WKWebView好点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值