UIWebView之hack网页

在上一回文章http://blog.csdn.net/favormm/article/details/6603923介绍了如何inject javascriopt 到UIWebView。  其实注入的目的就是为了利用, 今天介绍的就是如何修改网页中已有element的action, 会展示一个实例,如何修改html中button的点击事件。

在html中显示一个button的代码如下:

<input id="myButton1" name="cancel" type="button" value="Click me!" />
button都是用来响应事件的,下面代码是向button加入一个点击事件

<input id="myButton1" name="cancel" type="button" value="Click me!" οnclick="showAlert()" /><br/>
这句话的意思就是点击一下button就会调用showAlert()这个javascript 方法。


UIWebView可以显示网页,那么我们可不可以修改已有网页中button的点击事件呢?  其实可以!如何做呢?用javascript就可以做到,下面我将修改这个button的点击事件为其它方法。

第一步:按照上一回文章中介绍的方法注入js, 内容如下:

function clickLink() {
	alert('alread inject alert');
}

function changeButtonAction()
{
	//document.getElementsByName('cancel')[0].οnclick=function(){alert('alread inject alert');};
	document.getElementById('myButton1').οnclick=function(){clickLink();};
}

第二步:在

- (void)webViewDidFinishLoad:(UIWebView *)webView

{}方法中调用注入的js

[theWebView stringByEvaluatingJavaScriptFromString:@"changeButtonAction();"];

这样在你的UIWebView中显示的时候,那myButton1的点击事件就修改为你的方法了。


javascript真的很有用啊。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值