Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Скрыть 2 div'a после клика вне первого. (https://javascript.ru/forum/dom-window/51273-skryt-2-div%27-posle-klika-vne-pervogo.html)

рони 05.11.2014 20:56

Franz,
править естественно скрипт -- чтоб он учитывал специфику android -- неподскажу http://javascript.ru/forum/mobile/ не моя стихия

Franz 05.11.2014 20:57

В любом случае, спасибо за направление :)
Цитата:

Сообщение от Franz
UPD: Как можно поменять скрипт так, чтобы modal-bg открывался только в случае открытия mce-success-response\error?
Потому что сейчас может случиться так: пользователь промахнулся\случайно нажал на кнопку ОК - попап не вылез, а затенение появилось.

А не подскажете вот по этому вопросу?

рони 05.11.2014 21:20

Franz,
так проверьте состояние перед показом
function show() {
if(document.getElementById('mce-success-response').offsetWidth || document.getElementById('mce-error-response').offsetWidth)  document.getElementById('modal-bg').style.display = 'block';}

Franz 05.11.2014 21:29

Спасибо.
Я понимаю логику, но сам язык ещё толком не знаю. Буду учиться.

Franz 05.11.2014 21:36

Странно, но теперь окно перестало появляться совсем.

UDP: такой вариант тоже не работает.
function show() {
  	  if(document.getElementById('mce-success-response').style.display == 'block' || document.getElementById('mce-error-response').style.display == 'block') 
          document.getElementById('modal-bg').style.display = 'block';
  	}

рони 05.11.2014 22:35

Franz,
делайте макет или сами проверьте данные 'block' или что иное offsetWidth или что ранее ваше окно откроется или клик сработает.

Franz 05.11.2014 23:12

О каком макете идёт речь?

рони 05.11.2014 23:24

Franz,
макет - код который можно запустить тут или http://learn.javascript.ru/play --минимальный чтоб можно было локализовать проблему а не гадать.

а фон должен открываться не кнопкой а той функций что открывает окно

Franz 06.11.2014 13:39

К сожалению та функция, которая открывает окно недоступна. За неё отвечает mailchimp. Именно поэтому такие танцы с бубном.
Нет никаких хотя бы костыльных решений? :)

UPD:
Тут лежит JS файл, который отвечает за всю эту кухню:
http://s3.amazonaws.com/downloads.ma...mc-validate.js

Если сделать поиск по ID (mce-error-response/mce-success-response), то можно найти блок с их вызовом.
Только я так ничего и не добился, изучая это :\

рони 06.11.2014 13:56

Franz,
ставить фон по таймеру - всё тоже offsetWidth или 'block' но с задержкой на время открытия окна


Часовой пояс GMT +3, время: 00:55.