javascript - 切换问题-单击时跳转到页面顶部

标签 javascript jquery html css

我有一个这样的切换函数:

$('ul.internal-nav-list li ').on('click', function () {
        $(this).find('.internal-sub-list li ').toggle();

问题是,当您单击以切换子菜单时,页面跳转到顶部。所以我尝试使用

$('ul.internal-nav-list li ').on('click', function (e) {
        $(this).find('.internal-sub-list li ').toggle();
            e.preventDefault();

这解决了问题,但是子菜单的链接不起作用。 有人知道解决方法吗?

更新

这是html

<ul class="internal-nav-list">
                        <li><a href="#">applications</a>
                            <ul class="internal-sub-list">
                                <li><a href="../sos.aspx">Structures</a></li>
                                <li><a href="../tanks.aspx">Containment Areas</a></li>
                                <li><a href="../pumps.aspx">Pumps</a></li>
                                <li><a href="../hex.aspx">Heat Exchangers</a></li>  
                            </ul> 
                        </li>   

最佳答案

可能有更好的方法,但如果没有 HTML,就很难帮到您。但是您可以检查以确保它不是被点击的 anchor

if (!$(e.target).is(".internal-sub-list a")) {
    e.preventDefault();
}

关于javascript - 切换问题-单击时跳转到页面顶部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34813600/

相关文章:

html - 将多行内容与 :before and :after content 对齐

javascript - iframe 将高度更改为 1px

javascript - Browserify-如何使用 browserify 在 chrome 扩展中调用 Node js 代码

javascript - 如何从前一个元素的 NodeList 中获取所有类名?

javascript - 如何在div中调整上传图片的预览?

javascript - Bootstrap 轮播图像显示不占用空间的div

javascript - 通过从范围内的 ng-repeat 获取动态 id 使用切换

javascript - 一旦溢出 slider 达到特定点,禁用左键点击器

javascript - 是否可以使用 WebGL 最大纹理大小?

javascript - 暂停 JavaScript ||卡住页面