javascript - 在 jQuery 中跨多个元素插入多个值

标签 javascript jquery html css

我有一个几乎完全由 javascript 生成的页面。我有一个创建元素的主要功能,然后是一些可用于自定义每个元素的属性。大多数自定义是在 CSS 级别进行的,但我需要在每个元素中插入一个唯一的文本元素。

这是对象函数:

function buildButton(s, b) {
        $(s).append('<div id='+b.name+'></div>');
        $('#'+b.name).css({
            'position': 'absolute',
            'display': 'inline-block',
            'left': b.x,
            'top': b.y,
            'height': b.height,
            'width': b.width,
            'cursor': 'pointer',
            'z-index':5,
        });

我试图用这个创建独特的文本元素:

$('div[id |="controllerButt"]').append(b.buttText);

然后我们有函数调用:

buildButton(this, {
    name:'controllerButt-13',
    type: 'action',
    width:31, height:37,
    x:422, y:536,
    buttText: 'This is Button 13'
});

上面的结果输出“This is Button 13”,但它还附加了已设置的任何其他 buttText 实例,因此您发送“This is Button 13 This is Button 14 This is Button 15”等.

我应该如何处理这个问题,以便我只有“this”值而不是 buttText 的所有实例?

最佳答案

您可以在创建按钮的语句中设置文本

$(s).append('<div id='+b.name+'>'+b.buttText+'</div>');

或者使用一条长链

$('<div id='+b.name+'></div>')
 .text(b.buttText)
 .appendTo.(s)
 .css({
        'position': 'absolute',
        'display': 'inline-block',
        'left': b.x,
        'top': b.y,
        'height': b.height,
        'width': b.width,
        'cursor': 'pointer',
        'z-index':5,
 });

关于javascript - 在 jQuery 中跨多个元素插入多个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11144583/

相关文章:

javascript - 我的网络 worker 似乎没有正确计算

javascript - 如何使用热键检查 jquery 中的单选按钮

javascript - 如何反复更换背景图片

javascript - 如何区分拖动开始和选择开始 HTML5-Canvas

javascript - 检查 div 是否存在

javascript - 删除 Div 中的最后一个元素 [JavaScript]

javascript - 如何缓存另一个站点的 iframe?

javascript - Kendo Autocomplete 中的自定义过滤/排序逻辑

javascript - 无法将函数合并到一个文件中

html - 使用 div 和带有 css 的 h1 类时如何居中对齐文本的语法是什么