没有jquery expando属性的新创建的元素不是由jquery维护的?

时间:2010-10-04 14:44:35

标签: jquery

我在jQuery中创建了可折叠/可扩展的tree。 加载树后:

$("#tree").treeview({
        collapsed: true,
        animated: "medium",
        control: "#sidetreecontrol",
        persist: "location"
    });

我在节点上有expando数据属性,例如:

alt text

我编写了一些代码,它们将新节点添加到现有节点,基本上是通过创建新的<ul><li> html元素。因此,在添加新节点后,我有额外的ul容器,但没有 jQueryxxxxx ... 属性:

alt text

虽然我能够扩展和折叠在页面加载时初始化的节点,但是我无法与我之后添加的节点进行交互,因为它们没有被缓存......?我不明白,我不知道如何解决它,以便能够折叠和扩展我在树初始化后创建的节点。

此致

1 个答案:

答案 0 :(得分:2)

默认情况下,没有元素具有jQuery expando属性,它在事件或数据添加到元素时添加。这是您的.treeview()插件正在执行的操作,例如添加click个处理程序。您必须查看插件并看到它对新元素的支持...如果它们未被插件添加或识别,它们将没有“树状”行为。