- Регистрация
- 04.04.2015
- Сообщения
- 1 763
- Благодарностей
- 1 391
- Баллы
- 113
Приветствую.
Такое дело в общем.
Представьте div в котором есть много кнопок (button). Кнопки постоянно (с помощью ajax/js) двигаются вверх-вниз, удаляются старые, добавляются новые, перескакиваю в общем.
Я в кубике c# нахожу нужную кнопку, кликаю по ней и в другой части браузера загружается то что мне нужно. Но иногда бывает так, что нужная кнопка нашлась, но при клике по ней подгружается не то что должно подгружаться, а то что должно подгружаться при клике на другую кнопку (закономерности нет, может попасть на любую другую).
При этом в кубике находится 100% нужная мне кнопка т.к перед кликом паршу из ее innerHtml текст, который вывожу в лог. Но при клике по ней подгружается не то что нужно.
Подразумеваю что за время между нахождением кнопки и кликом по ней уже что-то менянется в DOM и переменная с нужным мне элементом указывает уже на другой элемент (другую кнопку).
Я вот и подумал, а нет ли какой-нибудь конструкции позволяющей залочить изменение dom ? что бы клик 100% прошел по тому элементу что был найден.
Весь мой код:
Tab tab = instance.ActiveTab;
if (tab.IsBusy) tab.WaitDownloading();
HtmlElement c = tab.FindElementByAttribute("button","class","new","text",0);
if (c.IsVoid || c.IsNull) return 0;
// тут небольшой парсинг регуляркой innerHtml
c.RiseEvent("click","Full");
Такое дело в общем.
Представьте div в котором есть много кнопок (button). Кнопки постоянно (с помощью ajax/js) двигаются вверх-вниз, удаляются старые, добавляются новые, перескакиваю в общем.
Я в кубике c# нахожу нужную кнопку, кликаю по ней и в другой части браузера загружается то что мне нужно. Но иногда бывает так, что нужная кнопка нашлась, но при клике по ней подгружается не то что должно подгружаться, а то что должно подгружаться при клике на другую кнопку (закономерности нет, может попасть на любую другую).
При этом в кубике находится 100% нужная мне кнопка т.к перед кликом паршу из ее innerHtml текст, который вывожу в лог. Но при клике по ней подгружается не то что нужно.
Подразумеваю что за время между нахождением кнопки и кликом по ней уже что-то менянется в DOM и переменная с нужным мне элементом указывает уже на другой элемент (другую кнопку).
Я вот и подумал, а нет ли какой-нибудь конструкции позволяющей залочить изменение dom ? что бы клик 100% прошел по тому элементу что был найден.
Весь мой код:
Tab tab = instance.ActiveTab;
if (tab.IsBusy) tab.WaitDownloading();
HtmlElement c = tab.FindElementByAttribute("button","class","new","text",0);
if (c.IsVoid || c.IsNull) return 0;
// тут небольшой парсинг регуляркой innerHtml
c.RiseEvent("click","Full");