set_document_complete_java_script

set_document_complete_java_script($script_text,$add_file); - add to the current page and call any JS immediately after the page document (and each page frame) is formed. This code will be executed in each frame and on the page. This can be useful for changing page objects, such as navigator.appName. (available from version 4.9.34)

The function accepts parameters as input:

  • $script_text – script text. If you need to get the result of the script, it is transmitted by creating additional DOM objects on the page.
  • $add_file – path to the file whose contents will be added to the beginning of the script text (if empty or there is no file, it will not affect anything).

    After testing, the function returns the result of its work to the script :
  • true – completed successfully
  • false – failed

    PHP example: browser->".basename(__FILE__)."
    "; $browser->enable_browser_message_boxes(); //1 echo "1.Let's set Java Script - document complete:"; //JS $js_new_naviagtor = "alert('document_complete');"; echo $browser->set_document_complete_java_script($js_new_naviagtor)."
    "; //2 echo "2.Let's see the changes:"; echo $browser->navigate("whoer.net").""; sleep(2); $anchor->get_by_attribute("class", "btn-more")->focus(); $anchor->get_by_attribute("class", "btn-more")->send_mouse_click(); //end echo "

    "; //Quit $app->quit(); ?>
    Python example: # Additional paths import sys sys.path.insert(0, '../../../Templates PY/') xhe_host = "127.0.0.1:7013" from xweb_human_emulator import * # Start echo("
    browser.xxxxxxxxx
    ") # 1 echo("1.Let's set Java Script - document complete") # JS js_new_naviagtor = "alert('document_complete');"; echo(browser.set_document_complete_java_script(js_new_naviagtor), "
    ") # 2 echo("2.Let's see the changes:") echo(browser.navigate("whoer.net"), "") sleep(2) anchor.get_by_attribute("class", "btn-more").focus() anchor.get_by_attribute("class", "btn-more").send_mouse_click() # end echo("

    ") # Quit app.quit()
    C# example: #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:7014"; InitXHE(); //Start echo("
    browser.set_document_complete_java_script
    "); //refresh the page(to re-execute the script) browser.refresh(); //1 step echo("1.Let's set the initial Java Script:"); echo(browser.set_init_java_script(@ " function setAppName(window, appName) { if(window.navigator.appName!= appName) { var appNameProp = {get: function() {return appName; }}; try { Object.defineProperty(window.navigator, 'appName', appNameProp); } catch(e) { window.navigator = Object.create(navigator, {appName: appNameProp}); } } } setAppName(window, 'new app name1'); "," ") +"
    "); //step 2 echo("2.Let's see the appName changes:"); echo(browser.navigate("whoer.net") + ""); sleep(2); anchor.get_by_attribute("class", "btn-more").focus(); anchor.get_by_attribute("class", "btn-more").send_mouse_click(); //end echo("

    "); app.quit(); } }
    Java Script example: