Я получил заявление делегата, который работает следующим образом:пытается добавить иерархии ограничений делегировать()
$("body").delegate("tr[type='option']",'mouseenter',function(){
Проблема заключается в том, что это захват элементов из таблиц я не хочу. Поэтому я пробовал:
$("body").delegate("table[class='ms-MenuUI'] > tr[type='option']",'mouseenter',function(){
Что не работает вообще (хотя я не получаю никаких ошибок в консоли). Просто интересно, как я могу затянуть это, так что это только захват строк таблицы из конкретной таблицы, которую я хочу.
ПРИМЕЧАНИЕ: таблица не существует в DOM при загрузке страницы и динамически создается/уничтожается после того, как документ готов, поэтому необходимо, чтобы делегат начал работу.
EDIT: В соответствии с моим комментарием ниже я использую [], потому что атрибут родителя является переменным, и я понимаю, что они должны работать взаимозаменяемо с атрибутом short-hand (то есть «.»). Типом динамического кода будет:
$('body').delegate('table[' + parentAttribType + "='" + parentAttribValue + "'] > tr[" + rowAttrbType + "='" + rowAttribValue + "']"), 'mouseenter', function(){
Спасибо!
@John Никогда не лучше использовать 'live'. (1) У этого есть ужасный синтаксис, (2) для выполнения делегирования требуется дополнительный селектор. – lonesomeday
похоже, что это правильное решение. Я не согласен с тем, что делегат всегда * лучше, чем вживую, - это вопрос конструктивных ограничений и потребностей в решении ... – patrickgamer
Спасибо, Джон, я собираюсь продвинуться в прямом эфире() – patrickgamer