0

我正在尝试创建一个可折叠的 div,但 chrome 控制台在 attr 数据角色可折叠的行上说“未定义不是函数”。你能告诉我如何做到这一点:

var iDiv = document.createElement('div');
iDiv.id = 'sectorDiv_'+distritoPosicion;
iDiv.className = 'sectorDiv_'+distritoPosicion;
iDiv.attr('data-role', 'collapsible');
iDiv.attr('data-collapsed-icon', 'arrow-r');
iDiv.attr('data-expanded-icon', 'arrow-d');
document.getElementsById('listaSectores')[0].appendChild(iDiv);

distritoPosicion 是一个数字,listaSectores 是一个现有的 div。

4

1 回答 1

1

attr()是来自 jQuery 的一种方法,它是setAttribute()你所追求的。

iDiv.setAttribute('data-role', 'collapsible');
iDiv.setAttribute('data-collapsed-icon', 'arrow-r');
iDiv.setAttribute('data-expanded-icon', 'arrow-d');

此外,您还试图以错误的方式获取元素。

document.getElementsById('listaSectores')[0]

它通常是getElementById(元素处没有 s)并且它只返回一个元素,因此[0]在这种情况下不需要。

document.getElementById('listaSectores').appendChild(iDiv);
于 2014-06-12T08:07:26.823 回答