[英]Removing elements just won't work with jQuery
我有一个自动生成的布局,看起来像是由jQuery.PrettyTextDiff-plugin创建的布局:
<head>
<script type="text/jaascript" src="the jquery library"></script>
</head>
<body>
<div class="diff">
<span>
<br/>
</span>
Continuing layout...
</div>
<script type="text/javascript" src="diff_match_patch.js"></script>
<script type="text/javascript" src="jquery.pretty-text-diff.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$('.diff span:first-child').remove(); // As of my last try
});
</script>
</body>
我希望在运行时删除“ diff”布局内的第一个跨度,但无法正常工作。 经过深入研究,我尝试了SO的几种解决方案。
$('.diff').closest('span').remove();
$('.diff span').first().remove(); //recommended solution by the jQuery Foundation - yet it won't work
$('.diff span').remove();
$('.diff').find('span:gt(0)').remove();
似乎没有什么可以消除跨度。 我应该如何删除它?
您是否包装了jQuery代码,例如:
$(document).ready(function () {
$('.diff span').remove();
});
这应该工作。
更新:要仅删除第一个孩子,请执行以下操作:
$('.diff span:first-child').remove();
像这样尝试...
$('.diff').each(function(){
$(this).find('span').eq(0).remove();
});
您提供的语句应该起作用:
$(".diff").remove("span");
我相信您正在谈论的代码是动态生成的。 您需要等待渲染,然后再删除span标签。
您也可以在插件本身中解决问题,或要求库的作者为您解决问题。
试试这个$(".diff").find("span").html("");
请点击这里 。
在某个地方,我看到了一条快速评论,暗示我可以使用CSS来解决此问题-因此我做到了。 它是一种魅力。
.diff span {
display: none;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.