powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / jquery узнать id предка (баг с опера)
7 сообщений из 7, страница 1 из 1
jquery узнать id предка (баг с опера)
    #37970997
m0p
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
m0p
Гость
Добрый день, нужно узнать предка элемента меню. я узнаю id - пункт подменю, на который навели мышкой, и parent - идентификатор пункта главного меню. Этот код работает во всех браузерах, кроме оперы. Опере же в значение parent = [object Window]. Пробовал изменять количество вызовов функции parent() - результат тот же...
Код: javascript
1.
2.
id = this.id;
parent = $(this).parent().parent().parent().parent().parent().attr('id');


Вопрос: можно ли каким нибудь другим способом узнать id своего предка???
html код:
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
<div id="dopmenu1" class="dopmenu" style="display:none;">
    <div class="strelka" style="margin: -57px 0 0 135px;"></div>
    <div class="dopmenu_content">
        <div class="first_part_dop_menu">
            <h2>Выберите продукт</h2>
            <ul>
                <li><a id="prod1" class="hover_element">Продукт1</a></li>
                <li><a id="prod2" class="hover_element">Продукт2</a></li>
                <li><a id="prod3" class="hover_element">Продукт2</a></li>
            </ul>
            
        </div>
    </div>
</div>
<div id="dopmenu2" class="dopmenu" style="display:none;">
    <div class="strelka" style="margin: -57px 0 0 135px;"></div>
    <div class="dopmenu_content">
        <div class="first_part_dop_menu">
            <h2>Выберите продукт</h2>
            <ul>
                <li><a id="prod1" class="hover_element">Продукт1</a></li>
                <li><a id="prod2" class="hover_element">Продукт2</a></li>
                <li><a id="prod3" class="hover_element">Продукт2</a></li>
            </ul>
            
        </div>
    </div>
</div>
...
Рейтинг: 0 / 0
jquery узнать id предка (баг с опера)
    #37971004
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: javascript
1.
$(this).closest('.dopmenu')

?
...
Рейтинг: 0 / 0
jquery узнать id предка (баг с опера)
    #37971011
m0p
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
m0p
Гость
неа, тоже возвращает parent = [object Window]
...
Рейтинг: 0 / 0
jquery узнать id предка (баг с опера)
    #37971044
m0p
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
m0p
Гость
полный код тестовой страницы, там все наглядно выводится в консоль. Должно выводить parnt2 = dopmenu2 или parnt2 = dopmenu1.

Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
<div id="dopmenu1" class="dopmenu">
    <div class="strelka" style="margin: 57px 0 0 135px;"></div>
    <div class="dopmenu_content">
        <div class="first_part_dop_menu">
            <h2>Выберите продукт</h2>
            <ul>
                <li><a id="prod1" class="hover_element">Продукт1</a></li>
                <li><a id="prod2" class="hover_element">Продукт2</a></li>
                <li><a id="prod3" class="hover_element">Продукт2</a></li>
            </ul>
            
        </div>
    </div>
</div><br><br><br>
<div id="dopmenu2" class="dopmenu">
    <div class="strelka" style="margin: 157px 0 0 135px;"></div>
    <div class="dopmenu_content">
        <div class="first_part_dop_menu">
            <h2>Выберите продукт</h2>
            <ul>
                <li><a id="prod1" class="hover_element">Продукт1</a></li>
                <li><a id="prod2" class="hover_element">Продукт2</a></li>
                <li><a id="prod3" class="hover_element">Продукт2</a></li>
            </ul>
            
        </div>
    </div>
</div>
<script>
$(function(){
 $('.hover_element').hover(function() {
        id = this.id;
        parent = $(this).parent().parent().parent().parent().parent().attr('id');
        console.log('ID = '+id+'  parnt2 = '+parent);
    });
});
</script>
...
Рейтинг: 0 / 0
jquery узнать id предка (баг с опера)
    #37971081
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Опера не любит слово parent. Назови переменную по-другому, будет все ок.
...
Рейтинг: 0 / 0
jquery узнать id предка (баг с опера)
    #37971090
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вернее не то чтобы не любит, просто у ее window есть свойство parent (тогда как в остальных браузерах parentWindow), а ты свой parent объявил без var, поэтому опера посчитала, что ты обратился к свойству окна.
...
Рейтинг: 0 / 0
jquery узнать id предка (баг с опера)
    #37971102
m0p
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
m0p
Гость
Офигеть, сам бы не допер. Спасибо, тему можно закрывать
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / jquery узнать id предка (баг с опера)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]