2013-03-14 48 views
0

我目前正在使用自动完成搜索框的服务。但是,对于显示的所有自动完成结果,在<li>之后底部总是会有一个<div>广告。事情是这样的:如何使用jQuery/javascript隐藏动态内容?

<ul> 
<li class="menu-item""></li> 
<li class="menu-item""></li> 
<li class="menu-item""></li> 
<div style="text-align:center;border-top:1px solid black;"></div> 
<a href="http://www.ad.com" target="_blank">ad</a> 
</ul> 

然而,这是动态使用JS,所以我不知道我怎么会写jQuery来hide()加载它。有人在搜索时可以动态地隐藏它吗?

+0

对于初学者,您的HTML无效。 – 2013-03-14 19:29:19

+0

对不起,我忘了粘贴结束 – Edmund 2013-03-14 19:30:08

回答

2

你可以做这样的事情在你的CSS:

ul>* {display:none} 
ul>li {display:block} 

毕竟,它仅适用于<ul>元素有<li>孩子,所以你应该能够掩盖一切为无效。

+0

简单和优雅 – 2013-03-14 19:29:58

+0

这将工作的节点,不存在的初始负载的DOM? li和div是在有人输入搜索词时动态生成的,所以它在初始加载中不存在 – Edmund 2013-03-14 19:34:08

+0

@Edmund是的,当节点在页面上加载时会应用它。 – loxxy 2013-03-14 19:35:09

0

如果您是结构的,当然,你总是可以在jQuery中解决它作为

$("ul").find("a,div").hide() 

最好是当然的CSS,因为Kolink回答。