Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Возможно ли сделать так (https://javascript.ru/forum/jquery/59904-vozmozhno-li-sdelat-tak.html)

vettel 02.12.2015 16:33

kolhoz,
это по-простому, не очень красиво (красивее было бы учитывать только страницу, без домена, location разделять по слэшам и т.д., но это неважно)
var href = location.href;
if (href == 'http://studentprograms.ru/testovoe-sobytie') {
    $('a.item-326').css('background', '#f00');
}

vettel 02.12.2015 16:35

kolhoz,
отпишитесь с результатом. Может не работать, в зависимости от того, куда вы засунули модуль. Если он срабатывает где-то до кнопки, то скрипт работать не будет, потому что данного элемента DOM на момент его отработки браузер еще не нарисовал.

kolhoz 02.12.2015 16:37

Не сработало

<script>
var href = location.href;
if (href == 'http://studentprograms.ru/testovoe-sobytie') {
  $('#mainmenu>li>a').css('background', '#f00');
}
</script>


А так показывает url
<script>
alert(location.href);
</script>

kolhoz 02.12.2015 16:39

Цитата:

Сообщение от vettel (Сообщение 398429)
kolhoz,
отпишитесь с результатом. Может не работать, в зависимости от того, куда вы засунули модуль. Если он срабатывает где-то до кнопки, то скрипт работать не будет, потому что данного элемента DOM на момент его отработки браузер еще не нарисовал.

Мм может поэтому и не сработало.. Сейчас переместил модуль в другую позицию сработало!!! Спасибо большое вам

vettel 02.12.2015 16:39

kolhoz,
я выше написал, почему.
Тогда оберните мой код в document.ready, вот так:
$(document).ready(function() {
      мой код выше
});

vettel 02.12.2015 16:42

kolhoz,
ну вот и замечательно.
Если скрипт находится выше элемента, который он выбирает - то он работать не будет. Нужно его либо обворачивать в document.ready (то есть ждать события DOMContentOnload), либо засовывать скрипт ниже того элемента, с которым он работает.


Часовой пояс GMT +3, время: 01:26.