Моя модифицированная библиотека поддержки поддерживает использование анимаций просмотра (например,
) и объектных аниматоров (т. е.
) для фрагментарных переходов. Он реализован с помощью NineOldAndroids . Подробнее см. В моей документации по github.
Способ jQuery:
$('#test').attr('id')
В вашем примере:
$ (document) .ready (function () {console .log ($ ('# test'). attr ('id'));});
Или через DOM:
$('#test').get(0).id;
или даже:
$('#test')[0].id;
и причину использования $ ( '#test'). get (0)
в JQuery или даже $ ('# test') [0]
- это $ ('# test')
Селектор JQuery и возвращает массив () результатов ни одного элемента по его функциональности по умолчанию
альтернативой для селектора DOM в jquery является
$('#test').prop('id')
, который отличается от .attr ()
и $ ('# test'). Prop ('foo')
захватывает указанный DOM foo
, а $ ('# test'). attr ('foo')
получает указанный атрибут HTML foo
, и вы можете найти более подробную информацию о различиях ] здесь .
$('#test')
возвращает объект jQuery, поэтому вы не можете использовать просто object.id
для получения его Id
вам нужно использовать $('#test').attr('id')
, который возвращает нужный вам ID
элемента
Это также можно сделать следующим образом ,
$('#test'). get(0).id
, который равен document.getElementById('test').id
.id
не является допустимой функцией jquery. Для доступа к атрибутам, которыми обладает элемент, необходимо использовать функцию .attr()
. С помощью .attr()
можно как изменить значение атрибута, указав два параметра, так и получить значение, указав один.
id
является свойством html элемента
. Однако, когда вы пишете $("#something")
, он возвращает объект jQuery, который обертывает соответствующий элемент(ы) DOM. Чтобы получить обратно первый подходящий элемент DOM, вызовите get(0)
$("#test").get(0)
На этом родном элементе можно вызвать id или любое другое родное свойство или функцию DOM.
$("#test").get(0).id
Вот причина, по которой id
не работает в вашем коде.
В качестве альтернативы используйте метод jQuery attr
, как предлагают другие ответы, чтобы получить атрибут id
первого подходящего элемента.
$("#test").attr("id")
$ ('selector'). Attr ('id')
вернет идентификатор первого совпадающего элемента. Ссылка .
Если ваш согласованный набор содержит более одного элемента, вы можете использовать обычный .each
итератор , чтобы вернуть массив, содержащий каждый из идентификаторов:
var retval = []
$('selector').each(function(){
retval.push($(this).attr('id'))
})
return retval
Или, если хотите чтобы стать немного более жестким, вы можете избежать оболочки и использовать ярлык .map
.
return $('.selector').map(function(index,dom){return dom.id})