2

私がやろうとしているのは、リストから要素を取得することです。リンク内のテキストを取得し、正しいテキストが含まれている場合はリンクをクリックしたいと考えています。これはhtmlコードです:

<table>
     <tr>
        <td><a href='...'>I need help</a></td>
        <td><a href='...'>Oh hello</a></td>
        <td><a href='...'>Lorem ipsum</a></td>
     </tr>
</table>

私はこれを試しました:

.click('table > tr > td > a:contains("I need help")')

しかし、何らかの理由で機能しません。

私はこれを使用できません:

.click('table > tr > td:nth-child(1) > a)

サイトが大きくなるにつれて、より多くの tr タグが追加されるためです。

何か案は ?

4

2 に答える 2

1

まず、HTML コードが少しねじれています。a は、回避策ではなく、要素の子でなければなりません。要素に関する MDN ドキュメントを読むことをお勧めします。

ダレクの問題について; Dalek は、実行するブラウザーの CSS セレクター エンジンを使用します。これは将来変更される予定です (統一されたセレクター エンジンとして Sizzle に置き換えられます) が、この将来が正確にいつになるかはわかりません。

:contains() 疑似セレクターについて - 私の知る限り、これはなくなりました。現在の CSS3 仕様では削除されているため、Dalek セレクターで使用することはできません。

于 2014-05-15T14:54:45.280 に答える
0

リンクテキストを確認する方法が見つかりませんが、href を知っている場合は、代わりにそれを使用してみてください

.click('a[href="uniqueURL"]')
于 2014-05-15T12:30:16.753 に答える