31.03.2015, 06:36
|
Интересующийся
|
|
Регистрация: 30.03.2015
Сообщений: 17
|
|
Скрытие скриптов. Нужна помощь!
Добрый день! Есть несколько функций модальных окон.
Как сделать, чтобы при вызове нового окна, закрывались все остальные? И так у каждого модального окна.
Последний раз редактировалось Lucard IV, 07.03.2017 в 15:41.
|
|
31.03.2015, 06:52
|
|
Профессор
|
|
Регистрация: 12.03.2015
Сообщений: 173
|
|
Чтобы при открытии одного файла закрывались остальные файлы? Или чтобы при открытии одного окна закрывались остальные окна?
|
|
31.03.2015, 07:02
|
Интересующийся
|
|
Регистрация: 30.03.2015
Сообщений: 17
|
|
Чтобы при открытии одного js файла скрывались все остальные, не знаю просто как реализовать.
|
|
31.03.2015, 07:06
|
Интересующийся
|
|
Регистрация: 30.03.2015
Сообщений: 17
|
|
Просто у меня каждое окно реализовано в разных файлах, по сути, разницы нет, лишь бы окна (файлы) скрывались перед открытием другого окна.
|
|
31.03.2015, 08:37
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Может все-таки не окна, а что-то типа панели? И если они открываются не ради просто открыть, то почему при уже открытой существует возможность открыть другие? Может все-таки не закрывать, а запрещать?
|
|
31.03.2015, 08:57
|
Интересующийся
|
|
Регистрация: 30.03.2015
Сообщений: 17
|
|
В том-то и беда, что при открытии нового окна (popup1.js), старое должно само скрыться (popup2.js).
Последний раз редактировалось Lucard IV, 31.03.2015 в 09:43.
|
|
31.03.2015, 09:01
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Понятно, то есть это выбор в меню. Тогда вам уже советовали верное решение - выбросить четыре файла и написать один сценарий обслуживающий эту задачу. В нем и должна быть операция, которая закроет уже открытое, а откроет запрашиваемое.
PS. Если я правильно понял, то что у вас описано в нескольких файлах, это отображение содержимого, которое показывается у выбранной кнопки. Значит и речи о "закрытии открытого" можно не вести, ибо в данном случае лучше определить один объект, в который загружается запрошенное, и который смещается по вертикали относительно активной кнопке.
Последний раз редактировалось laimas, 31.03.2015 в 09:13.
|
|
31.03.2015, 09:19
|
Интересующийся
|
|
Регистрация: 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;
});
});
});
});
Значит вот в этом скрипте окна уже ничего не поменять, чтобы осуществить задачу и нужно все делать заново?
|
|
31.03.2015, 09:28
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Выбрасывайте. У объекта, в который помещается запрашиваемый контент должно быть все прописано в стилях, кроме позиции по вертикали. Нажатие кнопки меню - это запрос, помещение ответа в объект, получение позиции по вертикали (смещение) кнопки меню, и определение позиции объекта по вертикали как смещение кнопки меню + величина коррекции.
Единственное о закрытии, так это если щелчок вне меню, вот тогда закрыть открытое.
|
|
31.03.2015, 09:32
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,127
|
|
Lucard IV,
а минимальный html вашего меню c css можно увидеть ? и зачем вам overlay?
|
|
|
|