我有一个默认显示的helpSection。当用户搜索结果时,页面将重新加载,searchResults应显示在帮助部分所在的位置,帮助部分设置为display:none。
我想有一些jQuery搜索页面并确定helpSection是否在屏幕上。如果正在显示searchResults,则helpSection应该消失。
我尝试了各种方法,但没有一种方法有效。任何帮助将不胜感激。
答案 0 :(得分:1)
像这样:
if($('#yourElement').is(':visible'))
{
$('#yourOtherElement').hide();
}
如果您想要显示它,可以使用show(),如下所示:
$('#yourOtherElement').show();
但是,如果这是在页面加载时确定的,那么使用服务器端语言定义它会更聪明。
答案 1 :(得分:0)
您的网页上似乎只有一个帮助部分。
势在必行的方法: 因此,您可以通过使用getElementById来检索帮助节元素来解决此问题。 如果没有返回返回的元素,则不会将其附加到dom,否则请检查display属性。
基于事件的方法(检查浏览器限制): 如果您只是根据需要删除并将帮助部分附加到dom,则可以绑定dom插入和删除以触发其他元素的可见性。 这是一个讨论事件绑定的相关帖子 Is there a jquery event that fires when a new node is inserted into the dom?
答案 2 :(得分:0)
根据您的HTML标记,您可能只使用CSS。
CSS
#searchResults + #helpSection {
display: none;
}
HTML
<div id="searchResults">Search search search</div>
<div id="helpSection">Help help help</div>
在 jsfiddle
上查看删除后会发生什么:
<div id="searchResults">Search search search</div>