如果父元素存在,如何删除它?
因此,有时,我的输出将如下所示:
<p><img src="someimage.jpg" /></p>
<p>A new paragraph</p>
其他时候,它将如下所示:
<img src="someimage.jpg />
<p>A new paragraph</p>
我正在尝试编写某种“if”语句,其中,如果标记中的第一个 p 元素围绕图像标签,它将pull:
$j("p:eq(1)")
否则,它将 pull:
$j("p:eq(0)")
或者,我可以找到所有的 img 标签,如果它被
标签包围,则删除它们,但我不确定哪个更好,或者如何做...
我尝试了以下方法,但它不起作用:
if($j("img:eq(0)").parent().get(0).tagName == "p") {
var pt = $j("p:eq(1)");
} else {
var pt = $j("p:eq(0)");
}
So, sometimes, my output will look like this:
<p><img src="someimage.jpg" /></p>
<p>A new paragraph</p>
Other times, it will look like this:
<img src="someimage.jpg />
<p>A new paragraph</p>
I'm trying to write some sort of "if" statement where, if the first p element in the markup surrounds an image tag, it will pull:
$j("p:eq(1)")
Otherwise, it will pull:
$j("p:eq(0)")
Alternatively, I could find all the img tags and if it's surrounded by
tags, remove those, but I'm not sure which one is better, or how to do either...
I tried the following, but it doesn't work:
if($j("img:eq(0)").parent().get(0).tagName == "p") {
var pt = $j("p:eq(1)");
} else {
var pt = $j("p:eq(0)");
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
试试这个:(
实例)
Try this:
(Live example)
这将抓取不包含图像的段落,这适合您有限的示例:
您的实际标记可能会比这更复杂,但您可以对此进行许多变体。
This will grab the paragraph not containing an image, which fits your limited sample:
It's probably the case that your actual markup will be more complex than this but there are many variations on this that you could do.
$('img').unwrap('p');
如果你想删除第一个父元素,只需使用 .unwrap();
PS:请注意您是否在兼容模式下使用 jQuery,如果需要,请将 $ 更改为 $j
$('img').unwrap('p');
if you wish to remove the first parent element, just use .unwrap();
PS: note if u ara using jQuery in compability mode and if you need, change $ to $j