Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用jquery在特定页面上隐藏/显示div_Jquery_Html_Css_Ajax - Fatal编程技术网

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

使用jquery在特定页面上隐藏/显示div,jquery,html,css,ajax,Jquery,Html,Css,Ajax,当时我对网站代码还不熟悉,我正在自学。我目前正在建立一个新网站,可以在这里看到:www.magik-arts.com,密码测试123 目前的问题是,我有一些div元素,我希望能够在指定的页面上隐藏和显示它们。例如,我有一个可以在主页上看到的侧导航/我不想在任何其他页面上看到的旅程 然而,我在我的站点上使用了ajax加载,因此css显示:none不工作或不触发 我现在处于一个路障,因为我不知道如何让它工作,所以任何帮助或指导将不胜感激。我想我将不得不使用jquery进行隐藏和显示,但我还不知道如何

当时我对网站代码还不熟悉,我正在自学。我目前正在建立一个新网站,可以在这里看到:www.magik-arts.com,密码测试123

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

然而,我在我的站点上使用了ajax加载,因此css显示:none不工作或不触发

我现在处于一个路障,因为我不知道如何让它工作,所以任何帮助或指导将不胜感激。我想我将不得不使用jquery进行隐藏和显示,但我还不知道如何使用set页面进行指定

是否需要执行.单击操作以触发显示:无切换?还是有一个合适的方法

如有任何建议,将不胜感激


提前感谢

您的问题有很多可能的答案,我会尽可能详细地回答您

1) 仅在希望显示的页面上包含侧边栏(使用PHP) 如果希望侧边栏处于打开状态,比如说,5个页面中只有3个页面处于打开状态,那么创建一个包含侧边栏代码的
sidebar.php
文件,并
将此页面包含在希望侧边栏的页面上

更多信息请访问:

2) 使用jQuery 您可以设置侧边栏
隐藏
并在需要显示时进行切换。使用jQuery可以很容易地完成这项工作,下面是一个示例:

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

请记住,这不是一个正确的方式来做它,只是提到它,让你知道

3) 使用CSS(不推荐) 只要您不想显示侧栏,就可以包含一个特定的css样式表,在这个样式表中,您可以使用
可见性:hidden
显示:none
隐藏侧栏。请记住,这样做不是一个好方法,因为您编写了更多代码来隐藏某些内容

我建议使用
include
方法,因为这是一种很好的方法,而且它适用于几乎所有语言,而不仅仅是web语言

编辑:添加JavaScript示例。 HTML


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

欢迎使用StackOverflow。请拿着这本书四处看看,通读一遍,然后阅读,并提供一个答案。如果周围的人能够轻松阅读并理解您的意思,或者问题是什么,他们可能更愿意提供帮助:)也可能重复,请阅读以下内容:您好,谢谢您的帮助-如果我想使用jquery执行此操作,我将如何指定它应该显示的页面?其他一切都隐藏起来了吗?我已经做了尽可能多的搜索和尝试,但它似乎无法与ajax一起工作……实际上非常简单,您只需将侧栏的默认css设置为
可见性:隐藏
显示:无
,然后使用JavaScript解析url以获取当前位置,如果结果与要在其上显示侧边栏的页面相等,则将侧边栏的css设置为
visible
,并将显示设置为
block
。阅读本文了解更多信息:好的,我想我已经开始了解了,或者可能没有(非常感谢您的帮助),所以我需要做的是以以下内容开始代码:
document.getElementById(“demo”).innerHTML=“此页面的完整URL是:
”+window.location.href显示:无添加在css中,我也没有像你一样在html中写下隐藏的内容?我需要补充什么具体内容吗?很抱歉,您的帮助非常有用,我很快就能让它工作了
<div class="sidebar" hidden> // Hidden sidebar
  <p>
    I am the sidebar
  </p>
</div>

<p class="path">
</p>
$(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 {}

})