Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 31.03.2015, 06:36
Интересующийся
Отправить личное сообщение для Lucard IV Посмотреть профиль Найти все сообщения от Lucard IV
 
Регистрация: 30.03.2015
Сообщений: 17

Скрытие скриптов. Нужна помощь!
Добрый день! Есть несколько функций модальных окон.
Как сделать, чтобы при вызове нового окна, закрывались все остальные? И так у каждого модального окна.

Последний раз редактировалось Lucard IV, 07.03.2017 в 15:41.
Ответить с цитированием
  #2 (permalink)  
Старый 31.03.2015, 06:52
Аватар для Alexander Belov
Профессор
Отправить личное сообщение для Alexander Belov Посмотреть профиль Найти все сообщения от Alexander Belov
 
Регистрация: 12.03.2015
Сообщений: 173

Чтобы при открытии одного файла закрывались остальные файлы? Или чтобы при открытии одного окна закрывались остальные окна?
Ответить с цитированием
  #3 (permalink)  
Старый 31.03.2015, 07:02
Интересующийся
Отправить личное сообщение для Lucard IV Посмотреть профиль Найти все сообщения от Lucard IV
 
Регистрация: 30.03.2015
Сообщений: 17

Чтобы при открытии одного js файла скрывались все остальные, не знаю просто как реализовать.
Ответить с цитированием
  #4 (permalink)  
Старый 31.03.2015, 07:06
Интересующийся
Отправить личное сообщение для Lucard IV Посмотреть профиль Найти все сообщения от Lucard IV
 
Регистрация: 30.03.2015
Сообщений: 17

Просто у меня каждое окно реализовано в разных файлах, по сути, разницы нет, лишь бы окна (файлы) скрывались перед открытием другого окна.
Ответить с цитированием
  #5 (permalink)  
Старый 31.03.2015, 08:37
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Может все-таки не окна, а что-то типа панели? И если они открываются не ради просто открыть, то почему при уже открытой существует возможность открыть другие? Может все-таки не закрывать, а запрещать?
Ответить с цитированием
  #6 (permalink)  
Старый 31.03.2015, 08:57
Интересующийся
Отправить личное сообщение для Lucard IV Посмотреть профиль Найти все сообщения от Lucard IV
 
Регистрация: 30.03.2015
Сообщений: 17

В том-то и беда, что при открытии нового окна (popup1.js), старое должно само скрыться (popup2.js).

Последний раз редактировалось Lucard IV, 31.03.2015 в 09:43.
Ответить с цитированием
  #7 (permalink)  
Старый 31.03.2015, 09:01
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Понятно, то есть это выбор в меню. Тогда вам уже советовали верное решение - выбросить четыре файла и написать один сценарий обслуживающий эту задачу. В нем и должна быть операция, которая закроет уже открытое, а откроет запрашиваемое.

PS. Если я правильно понял, то что у вас описано в нескольких файлах, это отображение содержимого, которое показывается у выбранной кнопки. Значит и речи о "закрытии открытого" можно не вести, ибо в данном случае лучше определить один объект, в который загружается запрошенное, и который смещается по вертикали относительно активной кнопке.

Последний раз редактировалось laimas, 31.03.2015 в 09:13.
Ответить с цитированием
  #8 (permalink)  
Старый 31.03.2015, 09:19
Интересующийся
Отправить личное сообщение для Lucard IV Посмотреть профиль Найти все сообщения от Lucard IV
 
Регистрация: 30.03.2015
Сообщений: 17

Вот я и не знал как определить один объект, поэтому написал к каждой кнопке по окну и смещаю индивидуальными стилями.

$(function () {
//script for popups
$('a.show_popup_authors').click(function () {
$('div.'+$(this).attr("rel")).fadeIn(500);
$("body").append("<div id='overlay'></div>");
$('#overlay').show().css({'filter' : 'alpha(opacity=80)'});
return false;
});
$('a.close').click(function () {
$(this).parent().fadeOut(100);
$('#overlay').remove('#overlay');
return false;
});
$(document).click(function(e){
var e = e || window.event,
x = e.srcElement || e.target;
if (x != $('.popup_authors') && !$(x).parents(' .popup_authors').size() ) {
$('.popup_authors').fadeOut();
$('#overlay').remove('#overlay');
}
});

//script for tabs
$("div.selectTabs").each(function () {
var tmp = $(this);
$(tmp).find(".lineTabs li").each(function (i) {
$(tmp).find(".lineTabs li:eq("+i+") a").click(function(){
var tab_id=i+1;
$(tmp).find(".lineTabs li").removeClass("active");
$(this).parent().addClass("active");
$(tmp).find(".tab_content div").stop(false,false).hide();
$(tmp).find(".tab"+tab_id).stop(false,false).fadeI n(300);
return false;
});
});
});
});

Значит вот в этом скрипте окна уже ничего не поменять, чтобы осуществить задачу и нужно все делать заново?
Ответить с цитированием
  #9 (permalink)  
Старый 31.03.2015, 09:28
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Выбрасывайте. У объекта, в который помещается запрашиваемый контент должно быть все прописано в стилях, кроме позиции по вертикали. Нажатие кнопки меню - это запрос, помещение ответа в объект, получение позиции по вертикали (смещение) кнопки меню, и определение позиции объекта по вертикали как смещение кнопки меню + величина коррекции.

Единственное о закрытии, так это если щелчок вне меню, вот тогда закрыть открытое.
Ответить с цитированием
  #10 (permalink)  
Старый 31.03.2015, 09:32
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Lucard IV,
а минимальный html вашего меню c css можно увидеть ? и зачем вам overlay?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна помощь по javascript darklend Общие вопросы Javascript 0 12.01.2014 23:33
Нужна помощь: Slider wheel Alex555 Мобильный JavaScript 0 15.05.2013 18:06
Нужна помощь по слайдеру seoguru Работа 3 28.01.2013 22:02
Нужна помощь с библиотекой скриптов Alex768 Ваши сайты и скрипты 0 03.09.2010 16:43
нужна помощь dominosoko Серверные языки и технологии 4 14.03.2010 02:17