Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.05.2016, 17:06   #11
bilibian
Форумчанин
 
Регистрация: 21.01.2014
Сообщений: 389
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Дык вам parent не doc'а нужен.
речь о body?
bilibian вне форума Ответить с цитированием
Старый 17.05.2016, 17:12   #12
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Причем тут body и doc? Идея оригинального кода была в том, чтобы у родительского элемента вызвать функцию удаления потомка (передав в нее нужного потомка).
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 17.05.2016, 17:21   #13
bilibian
Форумчанин
 
Регистрация: 21.01.2014
Сообщений: 389
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Идея оригинального кода была в том, чтобы у родительского элемента вызвать функцию удаления потомка
Это мне известно! Вызвать функцию удаления потомка у родительского элемента body. Он всем элементам будет родителем. Или Вы имеете ввиду непосредственного родителя конкретного элемента?! В таком случае получить родителя вряд ли получится.
bilibian вне форума Ответить с цитированием
Старый 17.05.2016, 17:23   #14
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
В таком случае получить родителя вряд ли получится.
Почему? parentNode же должен быть у всех элементов.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 17.05.2016, 17:25   #15
bilibian
Форумчанин
 
Регистрация: 21.01.2014
Сообщений: 389
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Почему? parentNode же должен быть у всех элементов.
Да, но я так пробовал и не работает. Может в чем-то ошибся?


Код:
doc.all.item(I).parentNode.removeChild( doc.all.item(I) );
bilibian вне форума Ответить с цитированием
Старый 17.05.2016, 17:40   #16
bilibian
Форумчанин
 
Регистрация: 21.01.2014
Сообщений: 389
По умолчанию

Цитата:
Сообщение от bilibian Посмотреть сообщение
Может в чем-то ошибся?
Обратный цикл помог избавиться от ошибки.

Странно, но элемент с самой табличкой исчез, а вот черный полупрозрачный фон на месте. Хотя он удовлетворяет всем требованиям на удаление.

Точно так-же происходит и при использовании стиля "display: none".
bilibian вне форума Ответить с цитированием
Старый 17.05.2016, 17:49   #17
come-on
Участник клуба
 
Регистрация: 21.10.2015
Сообщений: 1,361
По умолчанию

Потому что удалять надо весь popup, и не заниматься ерундой с зетиндексами, есть класс у елемента, найти удалить, строка кода

а скриптом еще проще

Последний раз редактировалось come-on; 17.05.2016 в 17:51.
come-on вне форума Ответить с цитированием
Старый 17.05.2016, 17:56   #18
bilibian
Форумчанин
 
Регистрация: 21.01.2014
Сообщений: 389
По умолчанию

Цитата:
Сообщение от come-on Посмотреть сообщение
Потому что удалять надо весь popup, и не заниматься ерундой с зетиндексами, есть класс у елемента, найти удалить, строка кода
Предположим у меня пул таких сайтов и для каждого нужно сделать скрин. Тогда придется вручную искать нужный класс и заносить его в код, а если завтра где-то верстка поменялась?! Вот это действительно ерунда!
bilibian вне форума Ответить с цитированием
Старый 17.05.2016, 18:00   #19
come-on
Участник клуба
 
Регистрация: 21.10.2015
Сообщений: 1,361
По умолчанию

А если индекс поменяют?
А чтобы не хордкодить то настройки делают, и всех делов.
come-on вне форума Ответить с цитированием
Старый 17.05.2016, 18:03   #20
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Через .style вы вроде не все найдете.

Надо как-то так на JS:
Код:
[].forEach.call(document.getElementsByTagName("div"), function(el) {
    var style = window.getComputedStyle(el);
    var zind = style.getPropertyValue('z-index');
    if (zind > 400)
      el.parentElement.removeChild(el);
})
Код:
wb.ВыполнитьСкрипт('[].forEach.call(document.getElementsByTagName("div"), function(el) { var style = window.getComputedStyle(el); var zind = style.getPropertyValue("z-index"); if (zind > 400) el.parentElement.removeChild(el); })');
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С,С++, как удалить элемент списка? Алексей_2012 Помощь студентам 5 11.06.2015 10:38
как удалить n-ый элемент вектора? Tiva Помощь студентам 1 09.11.2012 20:28
Как удалить элемент массива? БалаШагаЛ PHP 1 28.01.2012 20:46
Как удалить, определённый элемент из стринггрида? Lenux Помощь студентам 3 14.03.2010 18:57
Как удалить кэш и куки в webbrowser OkeaH Работа с сетью в Delphi 2 15.02.2009 16:58