使用jquery在特定页面上隐藏/显示div

时间:2017-05-02 10:14:19

标签: jquery html css ajax

那时我对网站代码很新,而且我是自学。我目前正在建立一个新网站,可以在这里看到:www.magik-arts.com,密码为测试123.

我目前的问题是我有一些div元素,我希望能够在指定的页面上隐藏和显示。例如,我有一个侧面导航,在主页/旅程中可见,我不想在任何其他页面上看到。

但我在我的网站上使用了ajax加载,由于这个css显示:none无法正常工作或触发。

我现在处于障碍,因为我不知道如何让它发挥作用所以任何帮助或指导都会非常感激。我想我将不得不使用jquery进行隐藏和显示,但我还不知道如何使用设置页面进行指定。

我是否需要执行.click操作才能触发显示:无切换?或者有正确的方法吗?

非常感谢任何建议。

提前致谢

1 个答案:

答案 0 :(得分:1)

您的问题有很多可能的答案,我会尝试尽可能多地给您答案,详细说明。

1)仅在您希望显示的页面上使用补充工具栏(使用PHP)

如果您希望自己的侧边栏处于开启状态,请注意,只有5页中的3页,然后创建一个包含侧边栏代码的sidebar.php文件,并include此页面在您想要侧边栏的页面上。

阅读详情:http://php.net/manual/en/function.include.php

2)使用jQuery

您可以随时设置侧栏hidden和.toggle它。它可以使用jQuery轻松完成,这里有一个例子:https://jsfiddle.net/g5bwwtvd/

显然,您可以更改.toggle方法,让jQuery检测用户所在的当前页面,并根据他所在的页面,.toggle(或不)侧边栏。

请记住,这不是一种正确的方法,只需提及它就知道了。

3)使用CSS(不推荐)

只要您不想显示侧边栏,就可以添加特定的CSS样式表,并在此样式表中隐藏侧边栏visibility: hiddendisplay: none。请记住,这样做并不是一个好方法,因为您编写了更多代码来隐藏某些内容。

我推荐使用ìnclude方法,因为这是一种很好的方法,它适用于几乎所有语言,而不仅仅是网络语言。

编辑:添加JavaScript的示例。

HTML

<div class="sidebar" hidden> // Hidden sidebar
  <p>
    I am the sidebar
  </p>
</div>

<p class="path">
</p>

JavaScript / JQuery

$(function(){

    var currPath = window.location.pathname; // Gets the current pathname ( /_display/ )

  $('.path').text('Current path is : '+ currPath);
  if(currPath == '/webpage.html'){ // Checks if the pathname equals the webpage you want the sidebar to be displayed on
    $('.sidebar').toggle(); // Set the sidebar to visibility: visible and display: block
  }else {}

})

DEMO

如果您想正确理解代码,请将if(currPath == '/webpage.html')更改为if(1 == 1),现在可以正确显示侧边栏。