Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » IkonBoard и другие форумы » Ikonboard v.2 » как создать ссылку с всплывающим окном в топике?

Модерирует : Antuan

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

torgpc

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Скажем я вставляю в топик такой текст
 
<script language="JavaScript">
<!-- hide
 
function openWin3() {
  myWin= open("", "displayWindow",  
    "width=300,height=150,status=yes,toolbar=yes,menubar=yes");
 
 
  myWin.document.open();
 
  myWin.document.write("<html><head><title>On-the-fly");
  myWin.document.write("</title></head><body>");
  myWin.document.write("<center><font size=+3>");
  myWin.document.write("какие-то сведения");
  myWin.document.write("</font></center>");
  myWin.document.write("</body></html>");
 
  myWin.document.close();  
}
 
// -->
</script>
 
 
<form>
<input type=button value="окошечко" onClick="openWin3()">
</form>
 
который сам по себе, в обычной странице, работает, а вот в топике уже нет.
как бы такое организовать?

Всего записей: 43 | Зарегистр. 07-11-2003 | Отправлено: 18:01 07-06-2004
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
torgpc

Цитата:
Скажем я вставляю в топик такой текст  

 
А конкретнее, куда?
 
Создай файл  sсript.js, помести туда свой скрипт, пропиши ссылку на файл в файле template.dat, так:
 
<script type="text/javascript" src="/путь/sсript.js"></script>
 
и все будет работать. Файл сохраняй _вне_ директории /cgi-bin/
 

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 19:32 07-06-2004
torgpc

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Просто в топик, конкретнее в начало. ТО есть я как админ создаю тему, а  в ней должна быть кнопочка или ссылочка, нажатие на которую приводит к появлению маленбкого окошка с текстом.  
lynx
Сделал как ты написала, не работает, пишет ошибка на странице (предполагается наличие обьекта)
Может я неправильно вызываю функцию? Я просто в топике пишу вот такое  
<input type="button" value=" Открыть новое окно" onClick="openWin2()">
а в файле sсript.js:
<script language="JavaScript">
<!-- hide
 
function openWin2() {
  myWin= open("window.htm", "displayWindow",  
    "width=400,height=300,status=no,toolbar=no,menubar=no");
}
 
// -->
</script>
 
ну а в файле template.dat как ты сказала:
<script type="text/javascript" src="/путь/sсript.js"></script>  
 
 
 
Неужели это вообще как то могло работать?

Всего записей: 43 | Зарегистр. 07-11-2003 | Отправлено: 22:37 14-06-2004
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
torgpc
 
проверяется элементарно - создаешь простую html страницу:
 

Код:
 
<html>
<head>
        <title>test</title>
<script language="JavaScript">  
<!-- hide  
 function openWin2() {  
  myWin= open("window.htm", "displayWindow",  
    "width=400,height=300,status=no,toolbar=no,menubar=no");  
}  
 // -->  
</script>  
</head>
<body>
<input type="button" value=" Открыть новое окно" onClick="openWin2()">  
</body>
</html>
 

 
Пихаешь туда свой скрипт и проверяешь - все прекрасно работает.
Значит, скрипт рабочий. очему же не работает на форуме?
 
Первая возможная причина:
 

Цитата:
ну а в файле template.dat как ты сказала:  
<script type="text/javascript" src="/путь/sсript.js"></script>  

 
Путь правильный? Запроси файл по этому пути. Файл, часом, не лежит в директирии /cgi-bin/ ? Он не должен в ней лежать, он должен лежать за ее пределами.
 
Вторая возможная причина... О! Кажется, я поняла:
 

Цитата:
а в файле sсript.js:  
<script language="JavaScript">  
<!-- hide  
 
function openWin2() {  
  myWin= open("window.htm", "displayWindow",  
    "width=400,height=300,status=no,toolbar=no,menubar=no");  
}  
 
// -->  
</script>  

 
 
В этом файле без всяких <script... должно быть дословно:
 

Код:
 
//Это жаба-скриптовый файл,
//о чем говорит его расширение,
//поэтому не нужно вначале писать директиву <script>
//и вообще сразу пишется код.
//А две косые черточки -  
//это однострочный комментарий в жаба-скриптовом файле.
/*А многострочный комментарий в файлах такого типа ставится с помощью косой черты, за которой следует звездочка - это начало комментария. Закрывается многострочный коментарий в обратном порядке,  как вы видите на данном примере */
//
function openWin2() {  
  myWin= open("window.htm", "displayWindow",  
    "width=400,height=300,status=no,toolbar=no,menubar=no");  
}  
 


Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 23:43 14-06-2004
torgpc

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
lynx
Путь в template.dat прописан правильно, но абсолютный. В этом может быть проблема?
Потому, что всё  равно не работает.

Всего записей: 43 | Зарегистр. 07-11-2003 | Отправлено: 19:57 23-06-2004
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
torgpc

Цитата:
Путь в template.dat прописан правильно, но абсолютный. В этом может быть проблема?  

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

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 20:34 23-06-2004
torgpc

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Положил скрипт в каталог www на локалхосте
Вот это прописал в файле template.dat после title:
<script type="text/javascript" src="http://localhost/www/sсript.js"></script>
Вот такую строку вставил в топик:
<input type="button" value=" Открыть новое окно" onClick="openWin2()">
В результате нажатия на кнопку пишет:
“ строка 157”
“предполагается наличие обьекта”
”код 0”
“Url-адрес - http://localhost/cgi/ikonboard/topic.cgi&forum1&topic2”
Здесь всё правильно сделал?
Если да, полезу искать второй скрипт, как ты сказала

Всего записей: 43 | Зарегистр. 07-11-2003 | Отправлено: 06:38 24-06-2004
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
torgpc

Цитата:
<script type="text/javascript" src="http://localhost/www/sсript.js"></script>  

 
Попробуй так:
 
<script type="text/javascript" src="/www/sсript.js"></script>  
 
то есть с корня сайта, начиная с /
 
 
 
А вообще, форум удаленно на сервере нигде не стоит? Там бы посмотреть.
 
 
 
Попробуй еще вот что.
 
Создай отдельный другой самостоятельный файл html, назови javatest.html, проложи его в корень сайта, в нем напиши код:
 

Цитата:
<input type="button" value=" Открыть новое окно" onClick="openWin2()">  

 
И ссылку в хеадере на скрипт:
 

Цитата:
<script type="text/javascript" src="http://localhost/www/sсript.js"></script>  

 
Или так:
 

Цитата:
<script type="text/javascript" src="/www/sсript.js"></script>  

 
И запусти файл так:
 
http://localhost/javatest.html
 
Проверь, работает ли скрипт, не выдает ли ошибки.  

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 15:29 24-06-2004
torgpc

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
lynx
Всё сделал, как говоришь, прости что мучаю, ну не выходит
Скрипт сам по себе нормально работает, а когда запускаю http://localhost/javatest.html  форму рисует, а при нажатии на кнопку пишет, что предполагается наличие обьекта.

Всего записей: 43 | Зарегистр. 07-11-2003 | Отправлено: 15:39 25-06-2004
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
torgpc

Цитата:
Скрипт сам по себе нормально работает, а когда запускаю http://localhost/javatest.html   форму рисует, а при нажатии на кнопку пишет, что предполагается наличие обьекта.  

 
Если он сам по себе работает, значит, проблема либо в неправильном пути к скрипту, либо в том, что скрипт конфликтует с другим скриптом.  
В первом случае просто - если указывает абсолютный путь к скрипту, то просто введи путь к нему в строке браузера:
 
http://localhosrтра_тра_та/скрип
 
Должен отобразиться файл скрипт. Значит путь верный.
 
Во втором случае - просто надови функцию по-другому, например, не openWin2(), а openWintorgpc()
Вообще, совет - все свои функции называй с каким-то привычным для тебя суффиксом или префиксом, уникальным, хотябы ник свой добавляя. Я, например, всегда в своих функциях добавляю в конец слово my, например:
 
openWin_my
 
Тогда, гладя на код скрипта, сразу легко понять, что твое, что чужое.
 
 
 

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 19:47 25-06-2004
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Значит так.
 
Писать надо так:
 
В template.dat
 

Код:
 
function mylittleWin() {  
  self.open("http://forum.ru-board.com", "displayWindow",    
    "width=400,height=300,status=no,toolbar=no,menubar=no");  
}  
 

 
Вот из-за отсутствия этого ключевого слова ничего и не работал. Браузер не понимал, к какому объекту обращаться. Когда на странице только само окно браузера и кнопа - браузер еще соображает, к кому событие open адресовано, а когда куча объетков - кпопы, поля текстовые и проч. и проч. - браузер теряется.
 
В topic.cgi:
 

Код:
 
<input type="button" name="my_little_button" value="Открыть новое окно" onMouseDown="mylittleWin()">  

 
Но на самом деле не принципиально, какое событие обрабатывать, все равно в таком виде в Опере работать не будет
 
 

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 04:17 26-06-2004
torgpc

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
огромное спасибо linx, всё заработало, причём работает и в опере и мозилле, а не только в ИЕ.

Всего записей: 43 | Зарегистр. 07-11-2003 | Отправлено: 11:34 15-07-2004
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » IkonBoard и другие форумы » Ikonboard v.2 » как создать ссылку с всплывающим окном в топике?


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru