1

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/

上記の URL を参照して、UIWebView で何をしようとしているのかを確認してください。

UIWebView の iOS が動作するように提案してください。

ありがとうございます

4

1 に答える 1

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()"];
}
于 2013-03-29T03:42:59.667 に答える