我正在寻找一种更简洁且可能更 jQuery-e 的方式来执行以下操作。我有lbl
一个 div 对象。div 中包含一个 span 标签,它是对象的firstName
andlastName
属性lbl
。所以,到目前为止,我们有以下 HTML:
<div class="label">
<span class="firstName">John</span>
<span class="lastName">Doe</span>
</div>
现在考虑以下小提琴http://jsfiddle.net/VfErV/
$('#btnSubmit').click(function ()
{
var lbl = $('<div>').addClass('label');
//I need to be able to access the child elements of the parent div
//via the dot operator
firstName = $('<span>').text('test1').addClass('firstName');
lastName = $('<span>').text('test2').addClass('lastName');
lbl.append(firstName);
lbl.append(lastName);
lbl.firstName = firstName;
lbl.lastName = lastName;
$('#page').append(lbl);
console.log(lbl.firstName.text());
//span tag is never added to the div
var lbl2 = $('<div>').addClass('label');
lbl2.firstName = $('<span>').text('test2').addClass('firstName');
$('#page').append(lbl2);
});
请参阅小提琴的行为。我需要能够控制父 div 容器的子对象上的字体大小、边框等lbl
,并将其作为普通 DOM 元素出现在页面上。直到第一个 lbl 控件被附加到页面之前的所有 JS 作品。不过,这对我来说看起来很笨拙。有没有更好的方法让 DOM 元素的子元素更容易/更简洁地成为父对象的属性?