humanemulator.net — справка.
Продукт, демо и покупка — на
хуманэмулятор.рф
|
Демо
|
Купить
|
API
|
лог изменений
run_java_script
run_java_script($script_text,$add_file=""); - добавить на текущую страницу и вызвать произвольный JSФункция на вход принимает параметры:
После отработки функция возвращает результат своей работы в скрипт :
Пример использования
<?php // Scenario: Navigate to a website and run JavaScript to get page title to demonstrate run_java_script function $xhe_host = "localhost:7010"; if (!isset($path)){ // Path to the init.php file for connecting to the XHE API $path = "../../../Templates/init.php"; // Including init.php grants access to all classes and functionality for working with the XHE API require($path); } // The following code demonstrates the usage of the run_java_script function // Navigate to a website first $url = "https://www.google.com"; WEB::$browser->navigate($url); WEB::$browser->wait_js(3); echo "Navigated to: " . $url; // Run JavaScript to get the page title $script_text = "document.title;"; $result = WEB::$browser->run_java_script($script_text); echo "\n\nPage title: " . $result . "\n"; // Quit the application WINDOW::$app->quit(); ?>
# 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()
#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 = "localhost: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("\n\n"); app.quit(); } }
// подключим функциональные объекты, если еще не подключен 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("\n"); // Quit app.quit();
=============================================
Browser Объекты DOM System Vision Web Window
=============================================
если что-то непонятно или необходимо узнать или считаете что надо добавить по работе этой функции, пишите в комментарии или на наш форум
.