2010-01-21 2 views
0

Я использую плагин jquery contextmenu для меню правой кнопки мыши, который я пытаюсь добавить к каждому элементу li неупорядоченного списка с почтовым ящиком идентификатора. Код у меня есть:Jquery li element id

$("#mailbox > li").contextMenu('myMenu1', { 
     bindings: { 
    'open': function(t) { 
     alert('Trigger was '+t.id+'\nAction was Open'); 
    } 
    //CODE SNIPPED 
    }); 

Мое предположение, что это должно насторожить идентификатор элемента списка, который Контекстное был вызван из, однако она возвращается пустая строка. Правильно ли я получаю/присваиваю их?

t является объектом HTMLLIElement в контексте выше, кстати.

Cheers, Gazler.

ответ

2

попробуйте использовать "#mailbox li" как ваш селектор. причина в том, что у #mailbox нет детей li

element > subelement предназначено для прямых детей только этого элемента. в этом случае прямым ребенком #mailbox, вероятно, будет ul, а не li, который был бы великим ребенком. element subelement выбирает всех потомков, а не только прямых детей.

проверить его здесь: http://docs.jquery.com/Selectors/child#parentchild
и здесь: http://docs.jquery.com/Selectors/descendant#ancestordescendant

+0

Спасибо большое, очень просто исправить. Не могли бы вы объяснить, что делает селектор «#element> subelement»? – Gazler

+1

см. Мои правки выше –

Смежные вопросы