UIWebView全局javascript变量不起作用

时间:2013-01-07 16:05:57

标签: javascript ios uiwebview

我在我的iOS项目中嵌入了一些html和js文件,以查找搜索到的文本的下一次和上一次出现,同样适用于浏览器并且在iOS中不起作用,我从下面的链接获得了相同的代码。在调试之后我发现我的变量在函数调用之间没有保持值。

var currSelected = 0;

function jump(howHigh){


    prevSelected = currSelected;
    currSelected = currSelected + howHigh;
    alert("currSelected" + currSelected); //currSelected is always 1 
 } 

http://jsfiddle.net/TAxdp/

请参考以上网址,了解我在UIWebView中尝试完成的工作。

请建议在UIWebView中使用iOS。

由于 djrecker

1 个答案:

答案 0 :(得分:0)

您可以这样做以使变体全局化:

1)在js文件中

function test(){
    alert(i++);
}

2)在.m文件中

//call before function 'do'
- (void)makeVariantGlobal {  
    [self.webView stringByEvaluatingJavaScriptFromString:@"var i=0"];
}

//i++ works!
- (void)do {
    [self.webView stringByEvaluatingJavaScriptFromString:@"test()"];
}