菜单
文档breadcrumb arrow Grafana k6breadcrumb arrow JavaScript APIbreadcrumb arrow k6/htmlbreadcrumb arrow Selectionbreadcrumb arrow Selection.prevUntil([selector], [filter])
开源

Selection.prevUntil([selector], [filter])

获取每个元素之前的所有同级元素,但不包括由选择器匹配的元素。模仿 jquery.prevUntil

参数类型描述
selector(可选)string | Selection | null用于匹配元素的选择器表达式或对象。
filter(可选)string | null用于过滤匹配元素的选择器表达式。

返回值

类型描述
Selection一个 Selection。

示例

JavaScript
import { parseHTML } from 'k6/html';
import { sleep } from 'k6';

export default function () {
  const content = `
<dl>
  <dt id="term-1">term 1</dt>
  <dd>definition 1-a</dd>
  <dd>definition 1-b</dd>
  <dd>definition 1-c</dd>
  <dd>definition 1-d</dd>

  <dt id="term-2">term 2</dt>
  <dd>definition 2-a</dd>
  <dd>definition 2-b</dd>
  <dd>definition 2-c</dd>

  <dt id="term-3">term 3</dt>
  <dd>definition 3-a</dd>
  <dd>definition 3-b</dd>
</dl>
  `;
  const doc = parseHTML(content);

  const sel = doc.find('#term-2').prevUntil('dt');
  console.log(sel.size());

  const selFilter = doc.find('#term-3').prevUntil('#term-1', 'dd');
  console.log(selFilter.size());

  sleep(1);
}