run_java_script

run_java_script(script_text, add_file="")

Данная команда позволяет добавить на текущую страницу и вызвать произвольный JS.

Команда на вход принимает параметры:
  • script_text – текст скрипта. Если нужно получить результат работы скрипта, то как сделать такое есть в примере ниже
  • add_file – путь к файлу, содержимого которого будет добавлено в начало текста скрипта (если пустое или файла нет то ни на что не повлияет)
После отработки команда возвращает результат своей работы в робот:
  • результат – результат выполнения, в старых версиях - просто статус что выполнили (type: bool)
  • false – выполнить не удалось (type: bool)



Примеры использования (php)

<?php $xhe_host = "127.0.0.1:7013";
 
// подключим функциональные объекты, если еще не подключен
if (!isset($path))
  $path="../../../Templates/init.php";
require($path);
 
// начало
echo "<hr><font color=blue>browser->".basename (__FILE__)."</font><hr>";
 
// 1 
echo "1. Выполним Java Script : ";
echo $browser->run_java_script("function foo(variable){alert(variable);return variable;}var e = document.createElement('div'); e.id = 'divResult'; e.innerHTML = foo(4); document.body.appendChild(e);document.characterSet")."<br>";
 
// 2 
echo "2. Получим результат сформированный работой JS : ";
echo "результат функции foo: ".$div->get_inner_html_by_id("divResult")."\n";
 
// 3 
$browser->navigate("about:blank");
echo "3. Получим доступ к консоли JS : ";
echo $browser->run_java_script("console.log('a')","js\\debug-firebug.js")."<br>";
 
// 4 
echo "4. Выполним JS и вернем результат : ";
echo $browser->run_java_script("navigator.appName")."<br>";
 
// конец
echo "<hr><br>";
 
// Quit
$app->quit();
?>

Примеры использования (cs)

#region using
 
using System;
using System.Diagnostics;
using System.Collections.Generic;
using System.Linq;
using System.IO;
using System.Text;
using System.Threading;
 
using XHE;
using XHE.XHE_DOM;
using XHE.XHE_System;
using XHE.XHE_Window;
using XHE.XHE_Web;
 
#endregion
 
 class Program:XHEScript
 {
	  static void Main(string[] args)
	  {
			// init XHE
			server="127.0.0.1:7010";
			InitXHE();
 
			// начало
			echo("<hr><font color=blue>browser.run_java_script</font><hr>");
 
			// обновим страницу (для повторного выполнения скрипта)
			browser.refresh();
 
			// 1 шаг
			echo("1. Выполним заданный Java Script : ");
			echo(browser.run_java_script("function foo(variable){alert(variable*2);return (variable*2);}var e = document.createElement('div'); e.id = 'divResult'; e.innerHTML = foo(4); document.body.appendChild(e);")+"<br>");
 
			// 2 шаг 
			echo("2. Получим результат выполнения Java Script : ");
			echo("результат функции foo: "+div.get_inner_html_by_id("divResult"));
 
			// конец
			echo("<hr><br>");
 
			app.quit();            
	  }
}

Примеры использования (js)

// подключим функциональные объекты, если еще не подключен
xhe_host="127.0.0.1:7010";
echo=require("../../../Templates JS/init.js");
 
// начало
echo("<hr><font color=blue>browser.run_java_script</font><hr>");
 
// 1 шаг
echo("1. Выполним Java Script  : ");
echo(browser.run_java_script("function foo(variable){alert(variable);return variable;}var e = document.createElement('div'); e.id = 'divResult'; e.innerHTML = foo(4); document.body.appendChild(e);document.characterSet")+"<br>");
 
// 2 шаг
echo("2. Получим результат сформированный работой JS : ");
echo("результат функции foo: "+div.get_inner_html_by_id("divResult")+"\n");
 
// 3 шаг
echo("3. Получим доступ к консоли JS : ");
echo(browser.run_java_script("console.log('a')","js\\debug-firebug.js")+"<br>");
 
 
 
 
// конец
echo("<hr><br>");
 
// Quit
app.quit();

Примеры использования (py)

# Additional paths
import sys
sys.path.insert(0, '../../../Templates PY/')
 
xhe_host = "127.0.0.1:7010"
from xweb_human_emulator import *
 
# начало
echo("<hr><font color=blue>browser.xxxxxxxxx</font><hr>")
 
# 1 
echo("1. Выполним Java Script : ")
echo(browser.run_java_script("function foo(variable){alert(variable);return variable;}var e = document.createElement('div');e.id = 'divResult'; e.innerHTML = foo(4); document.body.appendChild(e);document.characterSet"),"<br>")
 
# 2 
echo("2. Получим результат сформированный работой JS : ")
echo("результат функции foo: ",div.get_inner_html_by_id("divResult"))
 
# 3
echo("\n3. Выполним JS и вернем результат : ")
echo(browser.run_java_script("navigator.appName"),"<br>")
 
# 4
#browser.navigate("about:blank")
#echo("\n4. Получим доступ к консоли JS : ")
#echo(browser.run_java_script("console.log('a')","js\\debug-firebug.js"),"<br>")
 
# конец
echo("<hr><br>")
 
# Quit
app.quit()