iOS - UIWebViewDelegate拦截javascript调用

时间:2012-11-06 15:58:56

标签: javascript ios uiwebviewdelegate

我正在使用这个过程,以允许javascript从我的iPad应用程序调用目标c:

http://www.stevesaxon.me/posts/2011/window-external-notify-in-ios-uiwebview/

我正在注入页面的javascript代码是:

<script type="text/javascript">;
window.external =
{
'Set_A': function(s) { document.location = 'qms://Set_A?param=' + s; },
'Get_A': function(s) { document.location = 'qms://Get_A'; },

'Set_B': function(s) { document.location = 'qms://Set_B?param=' + s; },
'Get_B': function(s) { document.location = 'qms://Get_B'; },

'Set_C': function(s) { document.location = 'qms://Set_C?param=' + s; },
'Get_C': function(s) { document.location = 'qms://Get_C'; },

'Get_Version': function(s) { document.location = 'qms://Get_Version'; }
};
</script>;

调用上述初始化方法的html代码中的javascript是:

<html>
<body>
...
<script type="text/javascript">

Get_Version();

Set_A(true);
Set_B(false);
Set_C(true);

<script>
</body>
</html>

在上面的html中,在Objective C中调用的唯一方法是最后一个方法Set_C(true);

感谢。

1 个答案:

答案 0 :(得分:1)