DOM / interface
get_parent_by_attribute
get_parent_by_attribute($atr_name,$atr_value,$exactly=true); - получить интерфейс родительского элемента DOM по значению его аттрибута (доступна с 7.0.38 версии)Функция на вход принимает параметры:
После отработки функция возвращает результат своей работы в скрипт :
Пример использования (PHP):
===============================================================
<?php $xhe_host = "127.0.0.1:7014"; // подключим объект для управления эмулятором, если еще не подключен if (!isset($path)) $path="../../../Templates/xweb_human_emulator.php"; require($path); // начало echo "<hr><font color=blue>interface->".basename (__FILE__)."</font><hr>"; // чтобы быстрее $browser->set_wait_params(5,1); // 1 echo "1. Перейдем на полигон : "; echo $browser->navigate("ya.ru")."<br>"; // 2 echo "2. Получим тэги родительского элемента с заднным значением аттрибута : "; $obj_a=$btn->get_by_number(0); $obj_p=$obj_a->get_parent_by_attribute("class","suggest",false); echo $obj_p->get_tag()."\n"; // 3 echo "3. Получим несуществующй родительский элемент с заднным значением аттрибута : "; $obj_p=$obj_a->get_parent_by_attribute("class","suыыыыggest",false); if ($obj_p->get_tag()=="") echo "нет такого элемента"; // конец echo "<hr><br>"; // Quit $app->quit(); ?>
Пример использования (Python):
===============================================================
# Additional paths import sys sys.path.insert(0, '../../../Templates PY/') xhe_host = "127.0.0.1:701" from xweb_human_emulator import * # начало echo("<hr><font color=blue>interface.xxxxxxxxx</font><hr>") # чтобы быстрее browser.set_wait_params(5,1) # 1 echo("1. Перейдем на полигон : "); echo(browser.navigate("ya.ru"),"<br>"); # 2 echo("2. Получим тэги родительского элемента с заднным значением аттрибута : "); obj_a=btn.get_by_number(0); obj_p=obj_a.get_parent_by_attribute("class","suggest",0); echo(obj_p.get_tag()+"\n"); # 3 echo("3. Получим несуществующй родительский элемент с заднным значением аттрибута : "); obj_p=obj_a.get_parent_by_attribute("class","suыыыыggest",0); if obj_p.get_tag()==False: echo("нет такого элемента"); # конец echo("<hr><br>") # Quit app.quit()
Пример использования (C#):
===============================================================
#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:701"; InitXHE(); // начало echo("<hr><font color=blue>interface.get_parent</font><hr>"); // чтобы быстрее browser.set_wait_params(5,1); // 1 echo("1. Перейдем на полигон : "); echo(browser.navigate("ya.ru")+"<br>"); // 2 echo("2. Получим тэги родительского элемента с заднным значением аттрибута : "); XHEInterface obj_a=btn.get_by_number(0); XHEInterface obj_p=obj_a.get_parent_by_attribute("class","suggest",0); echo(obj_p.get_tag()+"\n"); // 3 echo("3. Получим несуществующй родительский элемент с заднным значением аттрибута : "); obj_p=obj_a.get_parent_by_attribute("class","suыыыыggest",0); if (obj_p.get_tag()=="false") echo("нет такого элемента"); // конец echo("<hr><br>"); app.quit(); } }
Пример использования (JS):
===============================================================
// IE + Chrom // подключим объект для управления эмулятором, если еще не подключен xhe_host="127.0.0.1:701"; echo=require("../../../Templates JS/xweb_human_emulator.js"); // начало echo("<hr><font color=blue>interface.get_parent</font><hr>"); // чтобы быстрее browser.set_wait_params(5,1); // 1 echo("1. Перейдем на полигон : "); echo(browser.navigate("ya.ru")+"<br>"); // 2 echo("2. Получим тэги родительского элемента с заднным значением аттрибута : "); var obj_a=btn.get_by_number(0); var obj_p=obj_a.get_parent_by_attribute("class","suggest",0); echo(obj_p.get_tag()+"\n"); // 3 echo("3. Получим несуществующй родительский элемент с заднным значением аттрибута : "); obj_p=obj_a.get_parent_by_attribute("class","suыыыыggest",0); if (obj_p.get_tag()=="") echo("нет такого элемента"); // конец echo("<hr><br>"); // Quit app.quit();
=============================================
Interface Объекты DOM System Vision Web Window
=============================================
Если что-то непонятно или необходимо узнать или считаете что надо добавить по работе этой функции, пишите в комментарии или на наш форум.