我目前有一个网站源代码(无法控制源代码),其中包含某些需要操作的内容。这在表面上看起来很简单,但是所讨论的标签上没有可以唯一标识它的唯一 ID 属性,因此允许进一步遍历。
这里是一段源代码,围绕着有问题的标签。
...
<td width="100%">
<!--This table snaps the content columns(one or two)-->
<table border="0" width="100%">
...
从本质上讲,HTML 注释作为一种访问该元素的简单方法而引人注目。使用 JQuery comment add-on来自 this question , and some help from snowlord comment below ,我已经能够识别评论并使用“转储”扩展检索以下输出。
$('td').comments().filter(":contains('This table snaps the content columns(one or two)')").dump();
返回;
jQuery Object {
0 = DOMElement [
nodeName: DIV
nodeValue: null
innerHTML: [
0 = String: This table snaps the content columns(one or two)
]
]
}
但是我不确定如何遍历 DOM 中的兄弟元素。
这应该很简单,但我对 JQuery 的选择器经验不多。任何建议表示赞赏。
我想你可以使用 siblings方法:
$('td').comments().siblings('table').yourcode...
来自文档:
Given a jQuery object that represents a set of DOM elements, the .siblings() method allows us to search through the siblings of these elements in the DOM tree and construct a new jQuery object from the matching elements.
The method optionally accepts a selector expression of the same type that we can pass to the $() function. If the selector is supplied, the elements will be filtered by testing whether they match it.
我是一名优秀的程序员,十分优秀!