2014-05-23 6 views
2

Я использую следующий скрипт для работы с jQuery: http://www.w3schools.com/html/html5_draganddrop.asp.JQuery Метод не найден

drag = function(ev) { 
     console.log("started drag", ev.target); 
     console.log('$(ev.target).parent()[0]', $(ev.target).parent()[0]); 
     console.log(' $(ev.target).parent()[0].attr(\'id\')', $(ev.target).parent()[0].attr('id')); 


    } 

Может кто-нибудь объяснить, почему я получаю Uncaught TypeError: не определено не является функцией в последнем журнале? (Метод атр)

ответ

3

Try,

$(ev.target).parent().attr('id') 

Ошибка повышения, потому что .attr() не является родным Javascript функция.

И, кстати, это время для вас, чтобы читать www.w3fools.com

+0

Да спасибо. Почему вам иногда приходится обращаться к первому элементу [0] родителя и почему иногда вы можете напрямую обращаться к нему (в этом случае)? – Vincent

+1

Вы получаете доступ к первому элементу (или любому элементу), чтобы получить узел DOM вместо объекта JQuery. –

+0

@Vincent '.attr()' является функцией, принадлежащей объекту jquery. в основном .parent() вернет объект jquery. Если вы хотите получить доступ к функциям javascript через этот объект jquery, вам нужно получить доступ к объекту js по первому элементу объекта jquery. –

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