Пишу сайт, установил скрипт, который по нажатию на ссылку открывает слой, вот тут:
http://antton120.narod.ru/prv2/prvp.html можно посмотреть в действии. Как я понял принцип работы такой: нажимаемая ссылка вызывает скрипт, тот в свою очередь вызывает определённый div класс, выводиться текст.
Вопрос такой: ссылок на странице много, по нажатию каждой должно открываться окно с разным содержанием, как не повторять скрипт много раз, а дописать в нём условие, что если нажата ссылка №1 вызвать класс №1, если нажата ссылка, вызвать класс №2 и тд.?
Да и ещё, как сделать так, что бы это окно было точно по центру?
Вот скрипт:
var shtrStep = 10; //шаг - количество пикселей на которое будет сворачивать слой за один раз
var shtrTimeout = 15;//задержка перед последующей итерацией для эффекта плавности
//текущее количество обрезаемых пикселей слоя слева и справа
var shtrLeft = 315;
var shtrRight = 315;
var shtrWidth = 630;//ширина слоя
var shtrTop = 160;
var shtrBottom = 160;
function shtrOpen_1()
{
if (shtrLeft>0)
{
shtrRight += shtrStep; //раскрываем область усечения справа на shtrStep пикселей
shtrLeft -= shtrStep; //раскрываем область усечения слева на shtrStep пикселей
shtrTop -= shtrStep;
shtrBottom += shtrStep;
var rect = 'rect('+ shtrTop +'px, '+ shtrRight +'px, '+ shtrBottom +'px, '+ shtrLeft +'px)';
document.getElementById('ShowWindow',"../CSS/Stranichnie_of.css").style.clip = rect;
setTimeout(shtrOpen_1,shtrTimeout); //вызываем эту же функцию повторно через shtrTimeout миллисекунд
}
}
function shtrClose_1()
{
if (shtrLeft<shtrRight)//Пока левая граница области усечения не встретилась с правой
{
shtrRight -= shtrStep; //сужаем область усечения справа на shtrStep пикселей
shtrLeft += shtrStep; //сужаем область усечения слева на shtrStep пикселей
shtrTop += shtrStep;
shtrBottom -= shtrStep;
var rect = 'rect('+ shtrTop +'px, '+ shtrRight +'px, '+ shtrBottom +'px, '+ shtrLeft +'px)';
document.getElementById('ShowWindow',"../CSS/Stranichnie_of.css").style.clip = rect;
setTimeout(shtrClose_1,shtrTimeout); //вызываем эту же функцию повторно через shtrTimeout миллисекунд
}
}
function clipImg(on)
{
document.getElementById("clipEx1").style.clip=on?'rect(78px 146px 183px 84px)':'rect(auto,auto,auto,auto)';
}
------------------------------------------
С уважением, Антон.