Работа со сложной структурой HTML в jQuery - PullRequest
0 голосов
/ 16 августа 2010

Я пишу плагин jQuery, который будет рисовать (с помощью Canvas) и сравнивать прямую и обратную трассировки. Разметка (которую я полностью контролирую) в настоящее время выглядит примерно так:

<div class="traceroute-wrapper">
  <div class="forward-traceroute">
    <div class="hop">...</div>
    ...
  </div>
  <div class="reverse-traceroute">
    <div class="hop">...</div>
    ...
  </div>
</div>

Моя текущая стратегия - вызывать плагин для элемента оболочки ($('.traceroute-wrapper').traceroute()) и просто предоставлять опции плагина forwardTracerouteClass и reverseTracerouteClass, которые плагин использует для выбора прямой и обратной трассировки.

Я всегда боролся и никогда не видел слишком много примеров (конечно, ни одного не приходит в голову) лучшего способа обработки сложных, вложенных структур данных, когда jQuery должен не только воздействовать на элемент, но и знать о вложенных элементах. .

У кого-нибудь есть советы или примеры плагинов, которые справляются с этим элегантно?

1 Ответ

0 голосов
/ 16 августа 2010

Я не на 100% понимаю, к чему вы клоните, но с JQuery я часто беру рассматриваемый элемент верхнего уровня и сохраняю его как объект JQuery.Затем я добавлю это в любые дальнейшие утверждения.

Итак:

var wrapper = $('.traceroute-wrapper');

$(wrapper).each() { 
   alert ($('.reverse-traceroute", wrapper).length); // will only search what was taken in that wrapper.
}

плохой пример, но я надеюсь, что это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...