【发布时间】:2023-04-07 12:08:01
【问题描述】:
HTML代码是:
<div id="topNavigationBar" style="bottom: 0px; display: block;">
<div id="topNavi_appSurrogates">
<div class="topNavi_appSurrogate prototype">
<div class="topNavi_appSurrogate_content">
<div class="function refresh_app">Refresh</div>
<div class="function show_app">Show</div>
<div class="function hide_app">Hide</div>
<div class="function quit_app">...</div>
</div>
</div>
<div class="topNavi_appSurrogate" style="left: 279px; display: block;">
<div class="topNavi_appSurrogate_content">
<div class="function refresh_app">Refresh</div>
<div class="function show_app">Show</div>
<div class="function hide_app">Hide</div>
<div class="function quit_app">Quit App1</div>
</div>
</div>
<div class="topNavi_appSurrogate">
<div class="topNavi_appSurrogate_content">
<div class="function refresh_app">Refresh</div>
<div class="function show_app">Show</div>
<div class="function hide_app">Hide</div>
<div class="function quit_app">Quit App2</div>
</div>
</div>
</div>
</div>
最初这个问题应该是不同的,但我在“类似问题”中找到了解决方案。上面的代码中有多个带有Refresh 文本的div 元素。我正在寻找一个在最后一个兄弟的文本中具有特定应用程序名称的特定对象。
我的解决方案是:
Click Element xpath://div[text()='Quit App1']/preceding::*[3]
但是,我不明白为什么
Click Element xpath://div[text()='Quit App1']/preceding::div[3]
不起作用。只有div 元素,我没有在寻找其他元素。
我访问了许多解释 XPath 的网站,但没有找到答案。请帮我理解一下。
【问题讨论】:
标签: html xml xpath robotframework