Selenium Webdriver содержит функцию, которая возвращает только видимый текст внутри элемента. Я бы хотел написать функцию, которая получит только скрытый текст внутри элемента (т. Е. Весь текст, который не отображается in meaning of Selenium Webdriver W3C spec). В соответствии с этой спецификации элемента видна только тогда, когда все следующие условия:Можно ли получить только скрытый текст элемента?
- элемент должен иметь высоту и ширину больше, чем 0px.
- Элемент не должен быть видимым, если этот элемент или любой из его предков скрыт или имеет свойство отображения CSS, которое равно none.
- Элемент не должен быть видимым, если есть свойство CSS3 Transform, которое перемещает элемент из окна просмотра и не может быть прокручено до. Элементы OPTION и OPTGROUP рассматриваются как особые случаи, они считаются отображаемыми тогда и только тогда, когда видимый элемент выбора является видимым.
- Элементы MAP отображаются, если и только если изображение, которое оно использует, видно. Области внутри карты отображаются, если отображается MAP.
- Любые элементы INPUT типа «type = hidden» не отображаются
- Любые элементы NOSCRIPT не должны быть видимыми, если включен Javascript.
- Элемент не должен быть видимым, если какой-либо предок в транзитивном закрытии элемента offsetParents элемента имеет фиксированный размер и имеет стиль CSS «overflow: hidden», а местоположение элемента не находится в пределах фиксированного размера родителя.
Можно ли написать функцию JS, который будет возвращать только скрытый текст, содержащийся внутри элемента? Вы знаете какую-либо библиотеку, которая содержит такую функцию? Насколько медленной будет такая функция?