lulik88 так. двойка. идем и читаем в гугле что есть сей жукьювери. я без нее ничего присоветовать не смогу. время на чтение - пять минут. я как раз налью себе чайку. и поедем дальше. тут работы на полчаса. но я за вас кодить не буду - =) я злой и страшный
второе: AJAX это такое умение javascript посылать запросы и получать ответы пока юзвер наивно доверяет своему броузеру. Не больше, не меньше. Поэтму фраза "Но некоторые и на AJAX пишут" - мне не ясна.
jQuery — библиотека JavaScript, фокусирующаяся на взаимодействии JavaScript и HTML. Библиотека jQuery помогает легко получать доступ к любому элементу DOM, обращаться к атрибутам и содержимому элементов DOM, манипулировать ими. Также библиотека jQuery предоставляет удобный API по работе с Ajax. вот что тут вычитала) Сейчас уже стала сидеть за Ajax но вопрос все равно не закрываю) по авкам не видно что злой и страшный, наоборот милый) =)))))
igordata кому за полчаса, а кому нет, просто я в основном на чистом PHP в большей степени работаю нежели JS (потому то и передача через стиль работала.)
lulik88 по авкам не видно что злой и страшный, наоборот милый Слежу за собой. Честное лицо стоит дороже. Сейчас матом оборал гендиректора одной из своих фирм. Девочку. За то что аську регистрировала работница, а не кто-то из доверенных. Стыдно, а что делать. Таких ситуаций допускать впредь нельзя, а не наорешь - не запомнит. И так. Вектор первый: jQuery сильно облегчает взаимодействие с элементами. Вектор второй: css позволяют хорошо прицелиться и затронуть только те элементы, какие надо =) Все =) задача: убрать стрелку. Решение: стрелка должна быть однозначно и без вариантов идентифицирована. После вызываем метод jQuery либо hide либо toggle. Событие вызова - клик по пункту меню. Соотв. если меню имеет вид HTML: <ul> <li>lalala</li> <li>jujuju <ul> <li>sub jujuju 1</li> <li>sub jujuju 2</li> <li>sub jujuju 3</li> <li>sub jujuju 4</li> </ul> </li> <li>fufufu</li> <li>hehehe</li> </ul> то при отрисовке мы можем раздать идентификаторы, которые гарантирую исчезновение стрелки. ща я таки пойду схожу за чаем, всеж таки третий раз чайник кипячу. пора и позавтракать, пять уже ж!
ну я и крики переношу, хотя меня матом также обругали, но ничо, как видите жива, при чем бывало и похуже когда чуть вниз не провалилась. ===================== хм. ок, тоды потопала думать) точнее решать задачу) Потому что сейчас занимаюсь состоянием, ну как бы сказать, сохранение положения меню, вот что то такого, но там с использованием сессии) Конечно только сейчас поняла что без сессии никак не напишу)
Оо в плане?) время что ли?) я например могу до 10 раз выпить чашку чая))))))))) а завтракать -- я не кушаю) после работы чуть чуть перекусываю)
а тут HTML отстутствует у меня, здесь просто еще помимо того привязка Smatry, поэтому и получается все в одном коде которую выложила в самом начале) это отдельный код меню
lulik88 а завтракать -- я не кушаю) после работы чуть чуть перекусываю) Это до первой язвы видать =) Я стараюсь не доводить. Просто утром не люблю есть =) а потом - времени нету. lulik88 а тут HTML отстутствует у меня в браузере посмотрите код =) и скоируйте сюда
igordata ну я на фруктах сижу) например сейчас на бананах) большой слишком код((((( там просто еще TPL входит, вообщем запутано)
Apple =))) просто лишний вес убрать надо))))))))))) igordata я вечером выложу код. просто с работы толку грузит долго очень, на тормозах работаю)
при отрисовке меню вам надо раздать всем элементам соотв id и class'ы т.е. если это пункт меню выше которого нет никого - то допустим даем ему класс level_0 его детям - level_1, и так до упора. потом если это первый пункт меню, то даем ему класс entry_first, последнему - enry_last, всем кто между - просто entry таким образом мы можем задать например что плюсики будут соеднины между собой точечками просто назначив картинку типа: | [+] | всем серединкам А последнему картинку | [+] и тогда будет красиво. Так или иначе у каждого пункта меню есть свой id в базе данных. Поэтому мы можем использовать этот номер тоже, присвоив класс id_123 для элемента с id 123 тогда мы сможем ТОЧНО его скрыть-открыть + произвести все операции надо его элементами. Но я предпочитаю присваивать некошерные атрибуты в элементах. Т.е. в пункт я бы ввел доп атрибут типа entry_id='123' Выглядеть это будет теперь так: HTML: <ul id='menu_main' class='menu'> [...] <li class='entry level_0' entry_id='123'> <div class='entry_content'> <div class='strelka'></div> <h3>jujuju</h3> <ul> <li>sub jujuju 1</li> <li>sub jujuju 2</li> <li>sub jujuju 3</li> <li>sub jujuju 4</li> </ul> </div> </li> [...] </ul> бонусы: мы можем легко управлять оформлением этого дела например оформление css [css]li.level_0 h3{font-size:11px;} li.level_1 h3{font-size:9px;} li.level_2 h3{font-size:9px;} /* Соответственно вот наша стрелка. мы можем задать разные картинки для разных уровней вложенности точно так же как и с заголовками */ li.level_0 div.strelka {background-image: url('/images/strelka_0.png')} li.level_1 div.strelka {background-image: url('/images/strelka_1.png')} /*или можем задать стили по одному на всех */ li.entry h3{font-size:11px;} li.entry div.strelka {background-image: url('/images/strelka.png')} [/css] Однако ж жукьвери не нуждается в этом, и может перебрать элементы и без таких изысков. но пока я вам рекомендовал бы сделать так: вешаем клик на весь див или ли $('ul.menu li').click(function () { $(this).ЧЕТА_ТАМ_ДЕТИ('div.strelka').toggle(); }); Вот я сейчас не могу вспомнить ( а может я и не знал?! о_О ) как обратиться к дитю. Ктонить сейчас придет и подсобит.
вроде так $(this).children('div.strelka').toggle(); соотв. тут же рядом можно открыть-скрыть пункты меню $(this).children('ul').toggle();
igordata на это и наткнулась я) сорри, подвисла за ноутом. ) Вообщем, сейчас разберусь) эти ценные вещи)
igordata я пока на локалхосте работаю, сама ссылка отстуствует, просто еще толком не запущено, с работы писала, потому и смотрела и тестировала. а дома на локалхосте пишу)