Создать ответ 
Появляющееся меню на jQuery
Автор Сообщение
ale10ey Не на форуме
Генерал-лейтенант
*

Сообщений: 352
У нас с: Nov 2014
Сообщение: #11
RE: Появляющееся меню на jQuery
Все разобрался, спасибо Happy Yes
17.10.2016 15:51:01
Найти все сообщения Цитировать это сообщение
ale10ey Не на форуме
Генерал-лейтенант
*

Сообщений: 352
У нас с: Nov 2014
Сообщение: #12
RE: Появляющееся меню на jQuery
Доброе время суток,
Вопрос не совсем по теме, но решил не создавать тему, так как имеет к ней отношение.

Проблема в принципе простая, сам частично решил, но не совсем...
Имеется общий хедер страниц и со всех страниц можно перейти на главную страницу, кликнув по названию сайта в хедере, тут все нормально и имеется title="Перейти на главную страницу", что логично, а для главной страницы при наведении title остается тот же самый, хотя смысла нет никакого, так как пользователь именно на главной странице в данный момент и является.

1. При наведении на название сайта в хедере главной страницы, title="Текущая страница" должен быть, а для других title="Перейти на главную страницу", как сейчас.
2. Пытался таким образом

$("#logo a[href*='"+url+"']").addClass("ref_current").removeAttr("href");
$('.index_current).attr('title','Текущая страница');

Класс задается и можно добавить к примеру нижнее подчеркивание, а title не срабатывает, показывается title который имеется в хедере, к которому подключаются все страницы включая главную.
Вот сейчас ломаю голову, как реализовать данный момент...
Заранее благодарен.
27.10.2016 22:30:38
Найти все сообщения Цитировать это сообщение
Admin Не на форуме
Верховный
Главнокомандующий
(Administrator)
*

Сообщений: 2,431
У нас с: Aug 2011
Сообщение: #13
RE: Появляющееся меню на jQuery
Ну если класс задается, то не проще ли сделать так:

Код:
$("#logo a[href*='"+url+"']").addClass("ref_current").removeAttr("href").attr('title','Текущая страница');

P.S. Код не проверял, но должно сработать.
28.10.2016 13:34:47
Найти все сообщения Цитировать это сообщение
ale10ey Не на форуме
Генерал-лейтенант
*

Сообщений: 352
У нас с: Nov 2014
Сообщение: #14
RE: Появляющееся меню на jQuery
Да, все работает, с этим я тоже разобрался, пока не удалил title из html не работал код, здесь мой косяк .Pardon

Сейчас (поскольку я удалил title="Перейти на главную страницу" в хедере) не работает для всех других страниц, только на главной странице при наведении - "Текущая страница", а на всех других страницах должно быть title="Перейти на главную страницу"

if (url.indexOf("blog.php")>-1) $("#logo a[href*='"+url+"']").attr('title','Перейти на главную страницу');
if (url.indexOf("/blog/")>-1) $("#logo a[href*='"+url+"']").attr('title','Перейти на главную страницу');

Не прописывать мне для каждой страницы код вроде этого Scratch, чтобы работал title, как лучше тут поступить, чтобы для всех других страниц был title="Перейти на главную страницу".
28.10.2016 14:45:27
Найти все сообщения Цитировать это сообщение
Admin Не на форуме
Верховный
Главнокомандующий
(Administrator)
*

Сообщений: 2,431
У нас с: Aug 2011
Сообщение: #15
RE: Появляющееся меню на jQuery
Что-то явно перемудрили... title удалять вручную из html кода не надо.

Итак, как я понимаю у Вас в шапке сайта что-то наподобие:
Код:
<a id="logo" href="http://usefulscript.ru/" title="Перейти на главную страницу"><img src="logo.png" alt=""></a>


Тогда вообще все просто:
Код:
if (document.location.href=="http://usefulscript.ru/") $("#logo").removeAttr("href").attr('title','Текущая страница');

Т.е. если мы попали на главную, то удаляем ссылку у элемента с id="logo" и меняем ему title.
28.10.2016 15:21:52
Найти все сообщения Цитировать это сообщение
ale10ey Не на форуме
Генерал-лейтенант
*

Сообщений: 352
У нас с: Nov 2014
Сообщение: #16
RE: Появляющееся меню на jQuery
Цитата:Тогда вообще все просто:
Код:
if (document.location.href=="http://usefulscript.ru/") $("#logo").removeAttr("href").attr('title','Текущая страница');

Т.е. если мы попали на главную, то удаляем ссылку у элемента с id="logo" и меняем ему title.

Только, что проверил - не работает, все время на главной странице показывается title который прописан в хедере:

Код:
<div id="header">
    <div id="logo">
        <a href="../index.php">
            <img src="../img/images/logo.png" title="Перейти на главную страницу" />
        </a>
    </div>
</div>

P.S. - проверил еще раз, та же история - не работает, вроде все правильно, но title не меняется...
(Последний раз сообщение было отредактировано 28.10.2016 в 15:55:08, отредактировал пользователь ale10ey.)
28.10.2016 15:47:33
Найти все сообщения Цитировать это сообщение
Admin Не на форуме
Верховный
Главнокомандующий
(Administrator)
*

Сообщений: 2,431
У нас с: Aug 2011
Сообщение: #17
RE: Появляющееся меню на jQuery
Ну так в Вашем случае и не должен, я же привел пример, для какого HTML кода будет работать.

Но теперь, когда имеется исходный код (HTML код), можно и "допилить" скрипт.
Код:
if (document.location.href=="http://usefulscript.ru/") $("#logo").children("a").removeAttr("href").children("img").attr('title','Текущая страница');
28.10.2016 15:58:07
Найти все сообщения Цитировать это сообщение
ale10ey Не на форуме
Генерал-лейтенант
*

Сообщений: 352
У нас с: Nov 2014
Сообщение: #18
RE: Появляющееся меню на jQuery
Спасибо Yes, работает.

if (document.location.href=="http://site.ru/index.php") $("#logo").children("a").removeAttr("href").children("img").attr('title','Главная страница').addClass("index_current");

Пришлось только прописать index.php в коде "http://site.ru/index.php", если просто название сайта "http://site.ru/", то не работал код, хотя в принципе должен работать ...Scratch
28.10.2016 16:43:38
Найти все сообщения Цитировать это сообщение
ale10ey Не на форуме
Генерал-лейтенант
*

Сообщений: 352
У нас с: Nov 2014
Сообщение: #19
RE: Появляющееся меню на jQuery
Здравствуйте, с наступающими Вас праздниками !!!
Имеется вопрос по поводу скрипта "меню на jQuery", точнее как правильно для него задать класс и title.

1. Когда, например, с главной страницы попадаю на guest.php, то
http://mysite.ru/guest.php, логично.

далее имеются на этой странице постраничная навигация, где

Имеются страницы :
http://mysite.ru/guest.php?comment_list=1
http://mysite.ru/guest.php?comment_list=2
http://mysite.ru/guest.php?comment_list=3
...
2. Когда перехожу http://mysite.ru/guest.php на 2 страницу, то
Код:
http://mysite.ru/guest.php?comment_list=2
,
а обратно
Код:
http://mysite.ru/guest.php?comment_list=1
,
а нужно http://mysite.ru/guest.php

3. Для чего вся задумка, чтобы для страницы (http://mysite.ru/guest.php) появляющего меню на jQuery задать класс и title.

4. Делал таким образом :
Цитата:if (url.indexOf("guest.php?")>-1) $("#ref_menu a[href*='guest.php']").addClass("ref_section");

далее прописал класс:
Код:
$('.ref_section').attr('title','Текущий раздел');

Все работает, для страниц 2, 3, 4, 5 и т.д, а вот для первой страницы все время "Текущий раздел", несмотря на то, что прописывал:

Код:
$("#ref_menu a[href*='"+url+"']").addClass("ref_current").removeAttr("href");

Данный код работает отлично, когда страница - http://mysite.ru/guest.php, но для страницы
Цитата:http://mysite.ru/guest.php?comment_list=1
, которая по сути является http://mysite.ru/guest.php, title и класс задается, как и для страниц 2, 3, 4, 5 и т.д.

5. Решил проблему, задав другой класс
Код:
if (url.indexOf("guest.php?comment_list=1")>-1) $("#ref_menu a[href*='guest.php']").addClass("ref_page_section");
и
Код:
$('.ref_page_section').attr('title','Текущая страница');

но было бы проще, если при переходе со страницы http://mysite.ru/guest.php?comment_list=2 на http://mysite.ru/guest.php?comment_list=1, она менялась и отображалась бы, как http://mysite.ru/guest.php, тогда не пришлось прописывать бы дополнительные классы, которые бы также нужно было бы в css добавить.

Заранее благодарю за помощь.
09.12.2017 09:48:13
Найти все сообщения Цитировать это сообщение
ale10ey Не на форуме
Генерал-лейтенант
*

Сообщений: 352
У нас с: Nov 2014
Сообщение: #20
RE: Появляющееся меню на jQuery
Здравствуйте, с наступающими праздниками !!!

Подскажите, пожалуйста, как реализовать переход со страницы
site.ru/blog.php?log_list=2 обратно на страницу site.ru/blog.php, но, чтобы в адресной строке было не site.ru/blog.php?log_list=1, а site.ru/blog.php

Пытался так :

Код:
if (url.indexOf("blog.php?log_list=2")>-1) $(".btn-menu ul li a[href*='blog.php']").addClass("btn_page_section");

$('.btn_page_section').attr('title','Текущая страница');

Нужно для того, чтобы прописать нужный класс для страницы, site.ru/blog.php и этой странице я задал класс "Текущая страница", но когда перехожу обратно со страницы site.ru/blog.php?log_list=2, то она у меня отображается не как site.ru/blog.php, а site.ru/blog.php?log_list=1 и класс заданный для страницы blog.php не работает для этой страницы, поэтому и приходится дополнительные классы прописывать.

Если же со страницы site.ru/blog.php?log_list=2 переходить на site.ru/blog.php и в адресной строке не будет глобального массива $_GET отображаться, то тогда не придётся прописывать другие классы.
Надеюсь вы смогли понять, что я написал.

С уважением, Yes

Заранее благодарен.
26.12.2017 17:32:14
Найти все сообщения Цитировать это сообщение
Создать ответ 


Переход:


Пользователи просматривают эту тему: 1 Гость(ей)


LiveInternet
© Copyright 2011-2024 by UsefulScript.ru