Intellect Board — cистема управления сайтом

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

Intellect Board — cистема управления сайтом »   Техническая поддержка версии 2.18 »   Устранение ошибок JavaScript'а для незалогиненного юзера
RSS

Устранение ошибок JavaScript'а для незалогиненного юзера

хак

Текущий рейтинг темы: Нет
Выводить сообщения
Правила раздела

<<Назад  Вперед>>Модераторы: aerograf, wsxПечать
 
Kritik
Новичок


Откуда: Украина
Всего сообщений: 9
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
11 апр. 2006
Вот и правка пошла после установки \":)\"

Если неавторизованный пользователь открывает страницу темы форума, то при наведении им курсора на опцию "цитата" любого сообщения или же при клике по "цитате" либо нику автора поста javascript выдаёт ошибку: "Object expected" в IE, "CopyQN и т.п. is not defined" в FF и т.п.

То же самое происходит, если авторизованный пользователь при недогруженной странице случайно проведёт курсором над ссылкой "цитата"...

Для решения сей проблемы можно:

Создать файл 0.js буквально такого содержания: function copyQN(){}function copyQ(){}function pasteQ(){}function pasteN(){}Залить 0.js в корневую директорию форума.

Добавить в шаблоне, выводящем <head> (main.php, функция main_header для ГрадиентБлу, может и для остальных стилей то же самое — пока не разбирался) после </title>такую строчку:
<script type="text/javascript" src="0.js"></script>

JavaScript перестанет ругаться.

---
м-да
Gram
Администратор

Gram
Откуда: Нижний Новгород
Всего сообщений: 1011
Рейтинг пользователя: 38


Ссылка


Дата регистрации на форуме:
23 июля 2003
Оригинальный хак решения проблемы :) Вообще по идее это реализуется на уровне шаблонов :)
Kritik
Новичок


Откуда: Украина
Всего сообщений: 9
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
11 апр. 2006
Можно и на уровне шаблонов - но с ними немного сложнее: придётся проверять при выводе имени автора поста и меню поста, залогинен ли пользователь, но это не решит проблемы с ошибкой на недогруженной странице для залогиненного пользователя, т.к. сейчас js-функции подгружаются после ссылок, наведение или клик на которые их вызывает... Последнее можно решить вынесением загрузки файлов post.js в <head> документа (куда в моём хаке вынесен 0.js).

---
м-да
4X_Pro
Руководитель Проекта
Настоящий Компьютерщик
4X_Pro
Откуда: Москва
Всего сообщений: 3299
Рейтинг пользователя: 70


Ссылка


Дата регистрации на форуме:
29 сен. 2001
А после такого у залогиненных пользователей цитата разве работать не перестанет из-за наличия двух одноименных функций?

---
Спорить со мной по поводу того, что в IntB будет, а чего нет -- бесполезно!
Kritik
Новичок


Откуда: Украина
Всего сообщений: 9
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
11 апр. 2006

XXXX Pro написал:
[q]
А после такого у залогиненных пользователей цитата разве работать не перестанет из-за наличия двух одноименных функций?
[/q]

Нет, в JavaScript'е функции - это по сути разновидность переменных: после повторного объявления функции просто присваивается новое значение.

По поводу переменных - одна из разновидностей синтаксиса для объявления функций - var func = new Function('arg1','arg2','code_to_execute')

---
м-да
4X_Pro
Руководитель Проекта
Настоящий Компьютерщик
4X_Pro
Откуда: Москва
Всего сообщений: 3299
Рейтинг пользователя: 70


Ссылка


Дата регистрации на форуме:
29 сен. 2001
Я решил сделать несколько иначе: прописать соответствующе пустые функции в std_topic_start (вывод начала темы), так как отдельный JS-файл — это излишество, которое тут же даст 1 Kb входящего и исходящего траффика за счет HTTP-заголовков. Тем более, что стандартный форум — это единственное место, где используются эти функции.

---
Спорить со мной по поводу того, что в IntB будет, а чего нет -- бесполезно!
<<Назад  Вперед>>Модераторы: aerograf, wsxПечать
Intellect Board — cистема управления сайтом »   Техническая поддержка версии 2.18 »   Устранение ошибок JavaScript'а для незалогиненного юзера
RSS

1 посетитель просмотрел эту тему за последние 10 минут
В том числе: 1 гость, 0 скрытых пользователей

Последние RSS
Ограничение доступа
не отображаются разделы
Архив версий
Установка стиля на Intellect Board 2.22
Завершилась работа над новой версией 3.00

Самые активные 5 тем RSS


Время выполнения скрипта: 0.0295. Количество выполненных запросов: 17, время выполнения запросов 0.0000
Creative Commons License Rambler's Top100 Rambler's Top100 Рейтинг@Mail.ru Valid HTML 4.01 Transitional Valid CSS!