2015-04-06 35 views
0

我试图通过向每个跨度添加一个按钮来修改所有span元素(由class ='behavior-header-options'标识)。问题在于span是通过AJAX调用动态加载的,所以我必须使用DOMMutationObserver来侦听(观察?)它们才能加载。DOMMutationObserver可以“高”吗?

我的问题是如何“高”起来的dom我可以去找到上面提到的所有跨度?基本上我不确定如何一路下降到我期待的范围。我是否应该递归遍历(child.child.child ...),直到达到我期待的范围?

我确定我会得到这个问题的投票,但我真的是新的JS,尤其是DOMMutationObserver的新手。

+1

对于初学者,您是否控制插入这些跨度的ajax?如果是这样的话,在ajax – charlietfl

+0

的成功回调中很容易操纵它们,我不控制那个ajax。 – Ramy

回答

0

我最终在这里做的是,除了任何监听器之外,都是从dom的根开始,重新加载页面并检查该节点的子节点是否已定义(也就是说,当我将aler(node.child .className +''node.child.id);显示了一些值)。我一直这样做直到节点的子节点未定义,然后在该节点上进行监听。这给了我正确的“深入”文件来听取。

如果有一个更简单的方法来找出哪个元素来听,我很高兴听到它。