Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.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 JS显示/隐藏DIV切换程序捕捉到页面顶部_Jquery_Toggle_Href_Show Hide - Fatal编程技术网

Jquery JS显示/隐藏DIV切换程序捕捉到页面顶部

Jquery JS显示/隐藏DIV切换程序捕捉到页面顶部,jquery,toggle,href,show-hide,Jquery,Toggle,Href,Show Hide,我正在使用我找到的Java脚本Show/Hide DIV切换程序。它是有效的,但它的副作用是每次点击切换按钮都会将我带到页面顶部。签入FF和Chrome,在两种浏览器中处理相同的事务。我不能确定它是否正在重新启动页面,但我知道它没有重新加载页面 以下是脚本: <script type="text/javascript"> <!-- function toggle_visibility(id) { var e = document.getElementByI

我正在使用我找到的Java脚本Show/Hide DIV切换程序。它是有效的,但它的副作用是每次点击切换按钮都会将我带到页面顶部。签入FF和Chrome,在两种浏览器中处理相同的事务。我不能确定它是否正在重新启动页面,但我知道它没有重新加载页面

以下是脚本:

<script type="text/javascript">
<!--
    function toggle_visibility(id) {
       var e = document.getElementById(id);
       if(e.style.display == 'block')
          e.style.display = 'none';
       else
          e.style.display = 'block';
    }
//-->
</script>

这是切换(注意href=“#”-这就是问题所在吗?:


这是显示/隐藏的div(如您所见,它开始隐藏):


有什么想法吗

非常感谢!
Alex

与函数无关,它是跳到页面顶部的
a
标记,您可以在函数中使用
event.preventDefault()
return false
来防止
a
标记的默认操作

向函数添加
e.preventDefault()
,以停止单击链接的默认行为。指定
href='#'
表示指向当前页面顶部的链接,这就是您当前看到该行为的原因。如果您使用的是jquery,那么也可以从函数中返回false


请注意,上面的变量
e
是作为第一个参数传递给onclick函数的事件对象



javascript:void(0)
:操作符
void
将返回一个空值,这样浏览器就不会加载新页面。嘿,伙计们,谢谢你们,我已经使用了javascript:void(0)了,它非常有效!谢谢你!对不起,也许我不清楚,我指的是我的回答中提到的
e
,而不是他在其功能中的那一个。我担心他会感到困惑,因为他已经定义了一个名为
e
的变量。我很高兴看到您将如何实现
e.preventDefault()
谢谢,由于某种原因,我无法让它工作(我认为我缺乏技能和理解是罪魁祸首:d),但我发现上面的方法对我很有效。谢谢你!
<a href="#" onclick="toggle_visibility('gallery_info');">[Click to see more details]</a>
<div id="gallery_info" style="display: none;">
<a href="javascript:" onclick="toggle_visibility('gallery_info');">[Click to see more details]</a>