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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.05.2016, 18:16   #21
come-on
Участник клуба
 
Регистрация: 21.10.2015
Сообщений: 1,361
По умолчанию

там вообще по идам можно сделать
document.getElementById("overlay"). style.display = "none";
document.getElementById("overlay_bg ").style.display = "none";
в настройки кинуть скрипт тупо вызвать, никакого хардкода никаких заморочек с индексами


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

Цитата:
Сообщение от come-on Посмотреть сообщение
А если индекс поменяют?
Я давно это осознал и обрабатываю все элементы, что есть на странице.

Код:
wb1.OleObject.document.all
popup блоки обычно размещают с zindex'ом и его значение около 1000 и выше. Это нужно для того, чтобы оставить зазор для других элементов сайта. Зная это можно отсеять popup окна и удалить.

Последний раз редактировалось bilibian; 17.05.2016 в 18:44.
bilibian вне форума Ответить с цитированием
Старый 17.05.2016, 18:46   #23
come-on
Участник клуба
 
Регистрация: 21.10.2015
Сообщений: 1,361
По умолчанию

Вам говорят выкинуть этот никому не нужный "код" и сделать нормально, а вы продолжаете гнуть..
come-on вне форума Ответить с цитированием
Старый 17.05.2016, 19:11   #24
bilibian
Форумчанин
 
Регистрация: 21.01.2014
Сообщений: 389
По умолчанию

Цитата:
Сообщение от come-on Посмотреть сообщение
Вам говорят выкинуть этот никому не нужный "код" и сделать нормально, а вы продолжаете гнуть..
Я не говорю, что мой код идеален, более того, он даже не до конца делает то, что от него требуется.

Цитата:
Сообщение от come-on Посмотреть сообщение
document.getElementById("overlay"). style.display = "none";
document.getElementById("overlay_bg ").style.display = "none";
Вы предлагаете использовать индексы, которые имеют отношение к popup на конкретном сайте. Если последовать Вашим рекомендациям, то придется зайти на каждый сайт, ручками найти эти индексы и занести их в код программы. Это совсем не практично, так как, в случае изменения верстки, уже ничего работать не будет.

Гораздо лучше отфильтровать popup окна по z-index. Ведь в таком случае не идет привязка программы к конкретному сайту и конкретному элементу. При необходимости придется корректировать значение только этого параметра.

На данный момент нужно понять, почему не удается удалить фон popup окна, в то время как, сам баннер удаляется.
bilibian вне форума Ответить с цитированием
Старый 17.05.2016, 19:14   #25
come-on
Участник клуба
 
Регистрация: 21.10.2015
Сообщений: 1,361
По умолчанию

бесполезно писать когда не читают ))
come-on вне форума Ответить с цитированием
Старый 17.05.2016, 19:25   #26
bilibian
Форумчанин
 
Регистрация: 21.01.2014
Сообщений: 389
По умолчанию

Цитата:
Сообщение от come-on Посмотреть сообщение
бесполезно писать когда не читают ))
Это Вы верно подметили!


Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Через .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); })');
Да, Ваш вариант отлично работает! Благодарю!

Последний раз редактировалось bilibian; 17.05.2016 в 19:28.
bilibian вне форума Ответить с цитированием
Старый 17.05.2016, 19:26   #27
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
Сообщение от bilibian Посмотреть сообщение
На данный момент нужно понять, почему не удается удалить фон popup окна, в то время как, сам баннер удаляется.
Написано ж почему.
http://programmersforum.ru/showthrea...04#post1606304
Ушел с форума, 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