Меняющаяся часть в скрипте в зависимости от выбранной ссылки.
Пишу сайт, установил скрипт, который по нажатию на ссылку открывает слой, вот тут: 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)'; } ------------------------------------------ С уважением, Антон. |
Писать за вас код вряд ли кто-то будет. Я бы посоветовал найти какую-нибудь небольшую JS библиотеку, которая выводит различные окошки такого плана. В вашем случае - это будет плюс, так как большинство библиотек - кросс-браузерны. Пример - YUI. Там же есть возможность оцентровать появляющееся окно.
Пример: http://developer.yahoo.com/yui/examp...n2_source.html Читать http://developer.yahoo.com/yui/container/ http://developer.yahoo.com/yui/conta...lay/index.html |
Часовой пояс GMT +3, время: 10:35. |