使用jQuery更改添加到DOM中的元素的CSS

时间:2016-08-02 21:35:18

标签: jquery css dom

我试图使用jQuery来更改jQuery Validation插件的错误标签的CSS属性。

这基本上是因为我使用jQuery方程来创建响应式字体大小,而不是通过CSS创建本机vw或em单元。通常很漂亮。

但是,由于标签最初不在DOM中,因此我无法使用$(document).ready(function)定位它:尽管它适用于$(window).resize(function)

那么在将元素加载到DOM中时,我应该使用什么函数来更改元素?

3 个答案:

答案 0 :(得分:1)

那么,也许变异观察者可以提供帮助? 在我几个月前开始使用角度之前发现了这些好东西,这里有一个可能有帮助的帖子

Detect changes in the DOM

- 修改 观察父元素,检查添加的元素是否是您正在寻找的元素。

答案 1 :(得分:0)

您应该使用MutationObserver API,一旦指定元素的DOM发生更改,它就会触发侦听器功能,因此您可以确保您的元素具有正确的CSS而不会触发{ {1}}事件。

以下是一些例子:

resize

但请注意MutationObservers may not work in all browsers 我的示例基于this answer,其中包含更多代码,以使其在旧版浏览器中运行。

答案 2 :(得分:0)

谢谢大家。最后,我使用了来自MutationObserver讨论的内容,HES_Xenon链接到上面的内容:一个基于MutationObserver的jQuery Initialise插件 - 主要是因为它使用的代码较少。