Phantomjs-evaluateaync-method
提供:Dev Guides
PhantomJS-evaluateAsync()
このメソッドは、現在の実行をブロックせずに、ページ内で指定された関数を非同期的に評価します。 この関数は、特定のスクリプトを非同期で実行するのに役立ちます。
*evaluateAsync* メソッドは引数を関数として受け取り、2番目の引数はミリ秒単位の時間をとります。 関数が実行されるまでにかかる時間です。 この関数には戻り値はありません。
構文
その構文は次のとおりです-
evaluateAsync(function, [delayMillis, arg1, arg2, ...])
例
evaluateAsync()メソッドの例を見てみましょう。
var wpage = require('webpage').create();
wpage.onConsoleMessage = function(str) {
console.log(str);
}
wpage.open("http://localhost/tasks/contentl", function(status) {
wpage.evaluateAsync(function() {
console.log('Hi! I\'m evaluateAsync call!');
}, 1000);
});
contentl
<html>
<head>
<title>welcome to phantomjs</title>
</head>
<body name = "content">
<script type = "text/javascript">
window.name = "page2";
console.log('welcome to cookie example');
document.cookie = "username = Roy; expires = Thu, 22 Dec 2017 12:00:00 UTC";
window.onload = function() {
console.log("page is loaded");
}
</script>
<iframe src = "http://localhost/tasks/al" width = "800" height = "800"
name = "myframe" id = "myframe"></iframe>
<h1>dddddddddd</h1>
</body>
</html>
上記のプログラムは、次の output を生成します。
welcome to cookie example
page is loaded
Hi! I'm evaluateAsync call!