0
    var urihost;
var result =  page.evaluate(function () {
        ............
        "set urihost value from here"
        ............
});

内部関数からurihostにアクセスするにはどうすればよいですか、グローバルにしても機能しません

フィドル: http://jsfiddle.net/KGLzj/

4

2 に答える 2

0

問題なく動作するはずですが、コールバック関数のようなものがあるようです。urihostコールバック関数が呼び出されておらず、値が割り当てられていないため、結果を割り当てた後にまだ値を持っていない可能性がurihostあります。

もっとコードを投稿できますか?

于 2012-04-27T18:55:36.090 に答える
0

私はあなたの質問を誤解しているかもしれません...

ただし、コードはそのままで機能するはずです。このフィドルを参照してください

// Setup page object:
var page = {
    evaluate: function(func) {
        // Don't forget to call the function...
        func();
    }
};

// The variable you want to change:
var urihost = 1;

// Execute now...
var result = page.evaluate(function () {
    urihost = 2;
});

// The alerted result will be 2
alert(urihost);​
于 2012-04-27T18:58:08.333 に答える