仅针对上下文,这种情况发生在我的WordPress管理区域,但它并不是特定于WP的。
我有一个链接,当点击它时,会创建一个带有少量子元素的新DOM元素。我正在尝试为这个新元素添加一个类名,如下所示:
<script type="text/javascript">
jQuery(document).ready( function($) {
$('tr#post-65 span.inline a.editinline').click(function() {
$('tr#edit-65').addClass('someclass');
});
});
</script>
所以tr#post-65
始终存在但表格行edit-65
仅在点击a.editinline
时存在。但是,上面我的jQuery tr#edit-65
没有创建,而是WP自己的jQuery代码,我无法访问。
所以,我的问题是,如何在我自己的jQuery块加载后创建的元素中添加一个类?是否可以检测元素edit-65
何时成功加载/创建,仅添加我的自定义类?
答案 0 :(得分:1)
创建一个间隔以定期检查元素的存在。并在完成时清除间隔:
<script type="text/javascript">
jQuery(document).ready( function($) {
$('tr#post-65 span.inline a.editinline').click(function() {
var int = setInterval(function(){
if($('tr#edit-65').length>0)
{$('tr#edit-65').addClass('someclass');
clearInterval(int);
}
}, 100);
});
});
</script>
答案 1 :(得分:1)
试试这个:由于你无法控制元素的创建,你可以使用setInterval来解决是否创建了元素然后设置了class并退出。
/**
* @OneToMany(targetEntity="AppBundle\Entity\UserDataAttribute", mappedBy="user", cascade={"persist", "remove"})
*/
private $customAttributes;
/**
* @ManyToOne(targetEntity="AppBundle\Entity\User", inversedBy="customAttributes")
*/
private $user;