Русский English Deutsch Українська Қазақша

Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не вошли.

#1 2008-12-18 02:53:38

vitaly
Администратор
Откуда: Россия
Здесь с 2008-10-08
Сообщений: 2,788
Рейтинг :   115 

HTML/JS menu - особенности работы IE/Opera/FF

Решаю задачу - новый генератор меню для ngcms.
Основные требования:
1. Работа даже при выключенном JS (т.е. все чисто-JS-меню отпадают)
2. Возможность открывать/закрывать ветки меню (при клике на "+" и "-")
3. Выделение текущего активного пункта меню

Получился вполне компактный HTML/JS код, но вот проблема - в FF меню работает отлично.
А вот в других браузерах начинаются проблемы:
IE - для блока span, для которого выставлено display: list-item, почему-то не срабатывает событие onclick при щелчке на мой list-style-image
Opera - вообще не отрабатывает list-style-image

Знатоки HTML, помогите разобраться!
Вот так выглядит предварительный вариант меню:
c2ba1bc54b239208cb37b901c0d3b363.png

HTML код меню лежит тут: http://ngcms.ru/test/menu/list.html

Вне форума

#2 2008-12-19 02:15:31

vitaly
Администратор
Откуда: Россия
Здесь с 2008-10-08
Сообщений: 2,788
Рейтинг :   115 

Re: HTML/JS menu - особенности работы IE/Opera/FF

Проблема решена.
В ближайшее время сделаю на базе этого кода новый генератор меню (в виде плагина).

Вне форума

#3 2008-12-21 10:31:27

sparco
Участник
Откуда: Россия
Здесь с 2008-11-01
Сообщений: 37
Рейтинг :   

Re: HTML/JS menu - особенности работы IE/Opera/FF

http://destroydrop.com/javascripts/tree/

Кроссбраузерный, бесплатный

Вне форума

#4 2008-12-21 10:40:50

vitaly
Администратор
Откуда: Россия
Здесь с 2008-10-08
Сообщений: 2,788
Рейтинг :   115 

Re: HTML/JS menu - особенности работы IE/Opera/FF

sparco, а ты отключи JScript'ы и посмотри что будет с этим меню (подсказка - ничего не будет, меню вообще не появится).

По условиям задачи меню должно отображаться даже в случае отключения JScript'ов, поэтому оно должно отрисовываться через HTML. И DTree тут не подходит (хотя он мне тоже нравится).

Вне форума

#5 2009-01-04 18:20:32

Amarelius
Модератор
Откуда: Kiev
Здесь с 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: HTML/JS menu - особенности работы IE/Opera/FF

vitaly, очень интересно, как решил проблему? Или выложи в SVN покурить...


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Вне форума

#6 2009-01-05 00:14:09

Amarelius
Модератор
Откуда: Kiev
Здесь с 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: HTML/JS menu - особенности работы IE/Opera/FF

vitaly, я заменил span на img, добавил две строки в скрипт, теперь работает везде...


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Вне форума

#7 2009-02-04 14:58:52

hot
Участник
Откуда: Россия
Здесь с 2008-10-26
Сообщений: 173

Re: HTML/JS menu - особенности работы IE/Opera/FF

Amarelius пишет:

vitaly, я заменил span на img, добавил две строки в скрипт, теперь работает везде...

Какие строчки ? Поподробнее, plz...

Вне форума

#8 2009-02-04 17:36:08

Amarelius
Модератор
Откуда: Kiev
Здесь с 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: HTML/JS menu - особенности работы IE/Opera/FF

Вот, что у меня вышло
http://www.iem.arnit.com.ua/download/tree.rar
Вся проблема в том, что IE не обрабатывает OnClick, по пустому элементу, коим в данном примере
был span, даже если ты в стилях пропишешь фон, элемент, по их мнению, должен содержать хоть что-то.
Поэтому я явно вставил картинку и обрабатываю OnClick по ней.
Немного причесать и можно использовать на сайте smile

p.s.: В Opera не проверял. IE6, IE7 - все ok. FF - само собой, там всегда все ok.

Отредактировано Amarelius (2009-02-04 19:11:04)


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Вне форума

#9 2009-02-05 00:40:28

hot
Участник
Откуда: Россия
Здесь с 2008-10-26
Сообщений: 173

Re: HTML/JS menu - особенности работы IE/Opera/FF

Amarelius пишет:

Вот, что у меня вышло
http://www.iem.arnit.com.ua/download/tree.rar
Вся проблема в том, что IE не обрабатывает OnClick, по пустому элементу, коим в данном примере
был span, даже если ты в стилях пропишешь фон, элемент, по их мнению, должен содержать хоть что-то.
Поэтому я явно вставил картинку и обрабатываю OnClick по ней.
Немного причесать и можно использовать на сайте smile

p.s.: В Opera не проверял. IE6, IE7 - все ok. FF - само собой, там всегда все ok.

СПАСИБО ! Буду экспериментировать...

Вне форума

#10 2009-02-26 20:08:07

panoptus
Участник
Откуда: Украина, Николаев
Здесь с 2009-02-18
Сообщений: 159
Рейтинг :   
Сайт

Re: HTML/JS menu - особенности работы IE/Opera/FF

Как прогресс? очень ждем финальную версию

Вне форума

#11 2009-02-26 21:31:47

vitaly
Администратор
Откуда: Россия
Здесь с 2008-10-08
Сообщений: 2,788
Рейтинг :   115 

Re: HTML/JS menu - особенности работы IE/Opera/FF

Ооо... я думал, что никому неинтересно :)

Вне форума

#12 2009-02-26 23:21:51

panoptus
Участник
Откуда: Украина, Николаев
Здесь с 2009-02-18
Сообщений: 159
Рейтинг :   
Сайт

Re: HTML/JS menu - особенности работы IE/Opera/FF

vitaly, ага, может кому и не интересно... но у меня если подкатегории не скрывать - листать страницу палец устает :)

Вне форума

#13 2009-03-05 17:20:03

hot
Участник
Откуда: Россия
Здесь с 2008-10-26
Сообщений: 173

Re: HTML/JS menu - особенности работы IE/Opera/FF

А вот как ТАКОЕ реализовать на NG CMS?

Отредактировано hot (2009-03-05 17:57:41)

Вне форума

#14 2009-03-05 20:01:18

panoptus
Участник
Откуда: Украина, Николаев
Здесь с 2009-02-18
Сообщений: 159
Рейтинг :   
Сайт

Re: HTML/JS menu - особенности работы IE/Opera/FF

hot, да, кошерная менюшка... :)

Вне форума

#15 2009-03-09 22:47:32

Eterex
Участник
Здесь с 2008-10-15
Сообщений: 33
Рейтинг :   

Re: HTML/JS menu - особенности работы IE/Opera/FF

Amarelius пишет:

Вот, что у меня вышло
http://www.iem.arnit.com.ua/download/tree.rar

p.s.: В Opera не проверял. IE6, IE7 - все ok. FF - само собой, там всегда все ok.

В опере работает. С выключенным яваскриптом, основное меню доступно, подпункты - нет. Ну и ладно - так сойдет.

Вопрос в другом - как можно сделать, чтобы запоминался пункт меню, и не приходилось плюсики по новой каждый раз нажимать?

Имеется в виду вот это: smile

vitaly пишет:

...
3. Выделение текущего активного пункта меню
...

Отредактировано Eterex (2009-03-09 22:56:30)

Вне форума

#16 2009-03-09 23:11:11

Amarelius
Модератор
Откуда: Kiev
Здесь с 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: HTML/JS menu - особенности работы IE/Opera/FF

Eterex, вариантов несколько:
1. В куки писать ID раскрытых и выбранных пунктов меню, а при перегрузке страницы в onLoad для меню считывать куки, раскрывать и выделять необходимые пункты меню (считаю самым правильным вариантом)
2. Можно передавать туже инфу на сервер при помощи XMLHttpRequest и писать в сессии, при перегрузке страницы передавать её браузеру (более заморочистый, но должен работать при отключенных куках)


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Вне форума

#17 2009-03-09 23:15:43

Amarelius
Модератор
Откуда: Kiev
Здесь с 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: HTML/JS menu - особенности работы IE/Opera/FF

Eterex пишет:

С выключенным яваскриптом, основное меню доступно, подпункты - нет.

Не проблема, можно легко сделать, чтобы при отключенных скриптах менюшка была полностью раскрыта


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Вне форума

#18 2009-03-10 10:33:23

Eterex
Участник
Здесь с 2008-10-15
Сообщений: 33
Рейтинг :   

Re: HTML/JS menu - особенности работы IE/Opera/FF

Amarelius пишет:

Eterex, вариантов несколько:
1. В куки писать ID раскрытых и выбранных пунктов меню, а при перегрузке страницы в onLoad для меню считывать куки, раскрывать и выделять необходимые пункты меню (считаю самым правильным вариантом)...

... Не проблема, можно легко сделать, чтобы при отключенных скриптах менюшка была полностью раскрыта...

А что именно и где нужно прописать? roll Спасибо заранее!

Вне форума

#19 2009-03-10 12:02:22

Amarelius
Модератор
Откуда: Kiev
Здесь с 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: HTML/JS menu - особенности работы IE/Opera/FF

Eterex, это надо делать в рамках плагина, ведь присвоение ID для пунктов меню происходит на стороне сервера. Дальнейшая обработка на стороне клиента -- чисто технический вопрос http://www.codenet.ru/webmast/js/Cookies.php


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Вне форума

#20 2009-03-10 12:44:21

Eterex
Участник
Здесь с 2008-10-15
Сообщений: 33
Рейтинг :   

Re: HTML/JS menu - особенности работы IE/Opera/FF

Amarelius, у меня это меню вынесено вручную, и категориями не является. То есть, ссылки на обычные странички сгруппированы в такую менюшку. Брр... надо учиться излагать мысли яснее, сам не понял чего написал)). В общем, тут можно глянуть alcogu.ru , справа.

Вне форума

#21 2009-03-10 13:57:26

Amarelius
Модератор
Откуда: Kiev
Здесь с 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: HTML/JS menu - особенности работы IE/Opera/FF

Eterex, Я понял, она у тебя статическая. Тогда будет время, прикручу к менюшке куки.


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Вне форума

#22 2009-03-10 21:03:29

Amarelius
Модератор
Откуда: Kiev
Здесь с 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: HTML/JS menu - особенности работы IE/Opera/FF

Eterex, Вот держи http://www.iem.arnit.com.ua/download/tree2.rar
, немного причесал.

Из особенностей:
1. Строка меню не переносится если не помещается в окно
2. При отключенных скриптах, показывает развернутый список
3. При включенных скриптах запоминает раскрытые пользователем пункты меню между сеансами

Обязательно!!! Пунктам меню которые разворачиваются присвоить разные ID (не важно какие, любые)
--------------------------------
Юзай на здоровье :)

Отредактировано Amarelius (2009-03-10 21:04:07)


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Вне форума

#23 2009-03-10 22:44:22

Eterex
Участник
Здесь с 2008-10-15
Сообщений: 33
Рейтинг :   

Re: HTML/JS menu - особенности работы IE/Opera/FF

О, супер. Все работает!!! Тысяча благодарностей Amarelius!!

P.S. отдельное спасибо за оперативность :)

Отредактировано Eterex (2009-03-10 22:48:42)

Вне форума

#24 2009-03-10 23:18:15

hot
Участник
Откуда: Россия
Здесь с 2008-10-26
Сообщений: 173

Re: HTML/JS menu - особенности работы IE/Opera/FF

Amarelius пишет:

Eterex, это надо делать в рамках плагина, ведь присвоение ID для пунктов меню происходит на стороне сервера. Дальнейшая обработка на стороне клиента -- чисто технический вопрос http://www.codenet.ru/webmast/js/Cookies.php

Спасибо большое за Ваши знания и умения Amarelius, но ни один "помешанный" на безопасности своего
компьютера никогда не позволит своему компу сторонние "куки"- соответсвено схема не работает...

Вне форума

#25 2009-03-10 23:25:16

Amarelius
Модератор
Откуда: Kiev
Здесь с 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: HTML/JS menu - особенности работы IE/Opera/FF

hot, помешанные хай каждый раз туцкают по меню big_smile big_smile big_smile
Кстати идентификатор сессий тоже в куках хранится...
wikipedia

Имеется и ряд заблуждений о куки. Они главным образом основаны на уверенности людей, что куки являются компьютерными программами. На самом деле, куки — это простые текстовые данные и они не могут выполнять какие-либо действия самостоятельно. В частности, куки не могут быть ни вирусами, ни шпионскими программами.

Отредактировано Amarelius (2009-03-10 23:32:34)


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Вне форума

Сейчас в этой теме пользователей: 0, гостей: 1
[Bot] ClaudeBot

Подвал форума

Под управлением FluxBB 1.5.11
Модифицировал Visman

[ Сгенерировано за 0.084 сек, 7 запросов выполнено - Использовано памяти: 620.25 Кбайт (Пик: 673.25 Кбайт) ]