Да, вы можете сделать это:
$('.obj').get(0).key = 'value';
или
$('.obj').get(0)['key'] = 'value'
Хотя лучше использовать .data()
:
$('.obj').data('key', 'value');
Советы
1. Вы можете объединить несколько вызовов, например, так:
$('.obj').css('color', 'red').data('key', 'value');
2. Вы можете передатьобъект на .css()
:
$('.obj').css({
'width': 100,
'height': 100
});
3. Если вы не измените другие свойства CSS, вы можете использовать .width()
и .height()
для установки и получения элементаширина:
HTML
<div id='box'></div>
CSS
#box {
width: 200px;
height: 100px;
}
JavaScript
var $box = $('#box');
// 200x100
alert( $box.width() + 'x' + $box.height() );
4. Возможно, вы заметилив предыдущем примере я сохранил ссылку на $('#box')
в переменной.В некоторых случаях вы не можете использовать цепочку, например:
var $box = $('#box');
setTimeout(function() {
$box.animate({ 'width': 100 }, 100);
}, 1000);
setTimeout(function() {
$box.animate({ 'height': 200 }, 100);
}, 1000);
Если вам нужно это сделать, всегда сохраните ссылку на элемент - это называется кэшированием.В противном случае jQuery придется искать его несколько раз.