Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Pop-up

990
15 августа 2004 года
Stalcer
137 / / 15.08.2004
Пожалуйста, подскажите синтаксическую ошибку:

Файл .js:

Код:
<script language='javascript'>
function pop_up1(url,width,height,size,scroll) {

newWin = window.open(url, "pop", "width=200"+ width +",height=427"+ height +",toolbar=no,menubar=no,location=no,scrollbars="+ scroll +",resizable="+ size +"");

newWin.focus();

}
function pop_up2(url,width,height,size,scroll) {

newWin = window.open(url, "pop", "width=250"+ width +",height=352"+ height +",toolbar=no,menubar=no,location=no,scrollbars="+ scroll +",resizable="+ size +"");

newWin.focus();

}
function pop_up3(url,width,height,size,scroll) {

newWin = window.open(url, "pop", "width=250"+ width +",height=353"+ height +",toolbar=no,menubar=no,location=no,scrollbars="+ scroll +",resizable="+ size +"");

newWin.focus();

}
function pop_up4(url,width,height,size,scroll) {

newWin = window.open(url, "pop", "width=200"+ width +",height=279"+ height +",toolbar=no,menubar=no,location=no,scrollbars="+ scroll +",resizable="+ size +"");

newWin.focus();

}
function pop_up5(url,width,height,size,scroll) {

newWin = window.open(url, "pop", "width=200"+ width +",height=279"+ height +",toolbar=no,menubar=no,location=no,scrollbars="+ scroll +",resizable="+ size +"");

newWin.focus();

}
function pop_up6(url,width,height,size,scroll) {

newWin = window.open(url, "pop", "width=200"+ width +",height=279"+ height +",toolbar=no,menubar=no,location=no,scrollbars="+ scroll +",resizable="+ size +"");

newWin.focus();

}
function pop_up7(url,width,height,size,scroll) {

newWin = window.open(url, "pop", "width=250"+ width +",height=176"+ height +",toolbar=no,menubar=no,location=no,scrollbars="+ scroll +",resizable="+ size +"");

newWin.focus();

}
function pop_up8(url,width,height,size,scroll) {

newWin = window.open(url, "pop", "width=350"+ width +",height=118"+ height +",toolbar=no,menubar=no,location=no,scrollbars="+ scroll +",resizable="+ size +"");

newWin.focus();

}
function pop_up9(url,width,height,size,scroll) {

newWin = window.open(url, "pop", "width=200"+ width +",height=291"+ height +",toolbar=no,menubar=no,location=no,scrollbars="+ scroll +",resizable="+ size +"");

newWin.focus();

}
function pop_up10(url,width,height,size,scroll) {

newWin = window.open(url, "pop", "width=200"+ width +",height=95"+ height +",toolbar=no,menubar=no,location=no,scrollbars="+ scroll +",resizable="+ size +"");

newWin.focus();

}
</script>


.HTML файл:

Код:
<html><head><script src="../../js/adv.js" type="text/javascript"></script>
</head><body>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
            <tr bgcolor="#FFFFFF">
              <td width="34%"><div align="left">[url="java script:pop_up1('../../pics/exhebitions/1/','200','427','yes','yes')"]Строительная[/url]</div></td>
             
            </tr>
            <tr bgcolor="#FFFFFF">
              <td>[url="java script:pop_up3('../../pics/exhebitions/3/','250','353','yes','yes')"]Еврогород[/url]</td>
             
            </tr>
            <tr bgcolor="#FFFFFF">
              <td>[url="java script:pop_up3('../../pics/exhebitions/3/','250','353','yes','yes')"]Складское[/url]</td>
             
            </tr>
            <tr bgcolor="#FFFFFF">
              <td>[url="java script:pop_up4('../../pics/exhebitions/4/','200','279','yes','yes')"]Склад-магазин[/url]</td>
             
            </tr>
            <tr bgcolor="#FFFFFF">
              <td>[url="java script:pop_up5('../../pics/exhebitions/5/','200','279','yes','yes')"]Склад-терминал[/url]</td>
             
            </tr>
            <tr bgcolor="#FFFFFF">
              <td>[url="java script:pop_up6('../../pics/exhebitions/6/','200','279','yes','yes')"]Интерсклад[/url]</td>
             
            </tr>
            <tr bgcolor="#FFFFFF">
              <td>[url="java script:pop_up7('../../pics/exhebitions/7/','250','176','yes','yes')"]СтанкоМашЭкспо[/url]</td>
             
            </tr>
            <tr bgcolor="#FFFFFF">
              <td>[url="java script:pop_up8('../../pics/exhebitions/8/','350','118','yes','yes')"]Баума - 2004[/url]</td>
             
            </tr>
            <tr bgcolor="#FFFFFF">
              <td>[url="java script:pop_up9('../../pics/exhebitions/9/','200','291','yes','yes')"]Конференция [/url]</td>
             
            </tr>
            <tr bgcolor="#FFFFFF">
              <td>[url="java script:pop_up10('../../pics/exhebitions/10/','200','95','yes','yes')"]2-я конференция [/url]</td>
                                      </tr>
          </table></body></html>

Заранее спасибо.
287
15 августа 2004 года
Shiizoo
958 / / 14.03.2004
' ... ="java script:pop_up9 ... ' - ошибка
' ... ="java script:pop_up9 ... ' - верно..

Вот и везде в таких местах пробел между java и script убери=) В остальное не всматривался)

' ... "width=200"+ width +",height=427"+ height ..' - а вот такие куски я не понял.. зачем ты указываешь размер явно, и здесь же еще и полученные размеры приписываешь?????=)

Хм.. еще внимательней присмотрелся и вообще ничего не понял.. Зачем тебе столько функций pop_up? Не достаточно-ли одной? Можно было б указать массив, а в него запихнуть размеры и другие параметры для создаваемых окон... А передавать ОДНОЙ функции один аргумент, например индекс элемента массива.. А функция сама бы уже все делала..

И еще, нередко встречаюца те, у кого JS отключен, а еследовательно нужно сделать так, чтобы ссылки работали и без JS`а.

Пользуй такую конструкцию.

Js включен - юзается первая конструкция, выключен - вторая.

<script language="JavaScript">
<!--
document.write(...);
// -->
</script>
<noscript>

</noscript>

990
16 августа 2004 года
Stalcer
137 / / 15.08.2004
Спасибо за ответ.
Да... формулировка вопроса у меня конечно на все 5, согласен :-)
Вообщем мне нужно чтобы десять окон с изображениями (и только) открывались (с помощью нажатия на ссылку) в виде POP-UP. Как мне это сделать, если я хочу весь JS хранить в файле .js. Напиши, пожалуйста, пример кода (я знаком с javascript на начальном уровне).
287
17 августа 2004 года
Shiizoo
958 / / 14.03.2004
###нутро script.html

<html>
<head>
<script src="popup.js" type="text/javascript"></script>
</head>
<body>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr bgcolor="#FFFFFF">
<td width="34%">Строительная</td>
</tr>
<tr bgcolor="#FFFFFF">
<td>Еврогород</td>
</tr>
<tr bgcolor="#FFFFFF">
<td>Складское</td>
</tr>
<tr bgcolor="#FFFFFF">
<td>Склад-магазин</td>
</tr>
<tr bgcolor="#FFFFFF">
<td>Склад-терминал</td>
</tr>
<tr bgcolor="#FFFFFF">
<td>Интерсклад</td>
</tr>
<tr bgcolor="#FFFFFF">
<td>СтанкоМашЭкспо</td>
</tr>
<tr bgcolor="#FFFFFF">
<td>Баума - 2004</td>
</tr>
<tr bgcolor="#FFFFFF">
<td>Конференция </td>
</tr>
<tr bgcolor="#FFFFFF">
<td>2-я конференция </td>
</tr>
</table>
</body>
</html>

####нутро файла popup.js

// linkz & def_linkz indexes: 0 - url, 1 - width, 2 - height, 3 - scroll, 4 - resizable

var linkz = [
['../../pics/exhebitions/1/','200','427','yes','yes'],
['../../pics/exhebitions/3/','250','353','yes','yes'],
['../../pics/exhebitions/3/','250','353','yes','yes'],
['../../pics/exhebitions/4/','200','279','yes','yes'],
['../../pics/exhebitions/5/','200','279','yes','yes'],
['../../pics/exhebitions/6/','200','279','yes','yes'],
['../../pics/exhebitions/7/','250','176','yes','yes'],
['../../pics/exhebitions/8/','350','118','yes','yes'],
['../../pics/exhebitions/9/','200','291','yes','yes'],
['../../pics/exhebitions/10/','200','95','yes','yes']
];

var def_linkz = ['127.0.0.1','100','100','yes','yes'];

function xpopup(params) {
if (!params || !params.length) params = def_linkz;
newWin = window.open(params[0], "pop", "width="+ params[1] +",height="+ params[2] +",toolbar=no,menubar=no,location=no,scrollbars="+ params[3] +",resizable="+ params[4] +"");
newWin.focus();
}

### всё..

в массиве linkz лежат параметры новых окон.. надеюсь добавить новые сам сможешь=)))) какой индекс вложенного массива чему соответсвует я написал.. если вызываешь xpopup() без параметров, или с пустым массивом, берутся параметры из def_linkz. Набор параметров этом def_linkz один, не думаю, что нужно больше=) Работает и с включнным и выключенным JS. Проверил в FireFox, IE 6.0 и Opera 7.23. И так и сяк. Так что можь не беспокоица. Только внимательней будь, я функцию привязывал к onclick, и после вызова всегда ставил return false; - это позволит остановить обработку событий после завершения нашей функции, и тогда браузер не среагирует на содержимое тэга href. Ну а если JS отключен, браузер наоборот, не реагирует на onclick. В общем, сохрани се образец и эксперементируй=)

Йо, забыл, это.. В общем параметры xpopup() нужно передавать массивом, и только. Если хочешь передать нутро массива linkz пишешь "xpopup(linkz[индекс])", а если хочешь какие-нить другие параметры вбить, например те, что у тебя сгенерировались на лету, и ты не мог их в скрипте сохранить, то пиши так "xpopup([параметр,параметр,параметр,параметр,параметр])".

Терь всё.=)

EOF
990
17 августа 2004 года
Stalcer
137 / / 15.08.2004
Вау! Спасибо. Чтоб так на каждом форуме помогали!
287
17 августа 2004 года
Shiizoo
958 / / 14.03.2004
да это ж, шизанутые ныне не в моде, лучше здесь туси=) нигде в другом месте таких как тут не найдешь=)))
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог