2016-12-13 1 views
0

Я пытаюсь найти элементы, используя индекс вкладки, который я могу получить с помощью css/Xpath/Id/Class, но можем ли мы использовать индекс вкладки, чтобы получить эти элементы.Можно ли найти элемент с tabindex с использованием селена?

+3

Доля HTML элемента, который вы хотите найти. – Jose

ответ

0

Нет, вы не можете. Варианты (от By класса):

By.ByClassName 
By.ByCssSelector 
By.ById 
By.ByLinkText 
By.ByName 
By.ByPartialLinkText 
By.ByTagName 
By.ByXPath 
+0

Спасибо за предоставление опций –

+0

Да, вы можете использовать CSS Selectors и/или Javascript. – JeffC

0

Я думаю, что вы можете найти по индексу вкладок с помощью селектора CSS, например:

By.cssSelector("[tabindex='1']") 
+0

Спасибо за помощь, но я тоже не могу получить элемент с этим –

+0

'1' - был примером того, что вы ищете элемент с tabindex = 1. Не могли бы вы предоставить свой html и элемент, который вы хотите найти? –

0

Это возможно несколько способов. Если в элементе указан атрибут tabindex, вы можете найти его с помощью селектора CSS, например.

Пример HTML

<input type='text' tabindex=3 id='calc_price' size='10' name='elem3' value=''> 

CSS Selector

"[tabindex='3']" 

Вы могли бы бросить это в функции и имеют индекс быть переменной.

Другой способ сделать это - использовать Javascript для получения индекса вкладки элемента. Вы можете пройти через элементы INPUT и найти нужный индекс вкладки и вернуть этот элемент.

function findTabIndex(index) { 
    var all = document.querySelectorAll("input"); 
    for (var i = 0; i < all.length; i++) { 
     if (all[i].tabIndex === index) { 
      return all[i]; 
     } 
    } 
} 

Вы бы обернуть приведенный выше код JS в функции и вызвать его с помощью JavascriptExecutor.