JavaScript 页面滚动位置

标签 javascript jquery html

我正在使用 JavaScript 选项卡式菜单,当选择菜单项时,它会加载不同的内容(文本/照片)。

但是,当您单击菜单项时,滚动位置会跳转到元素(在本例中为照片)的中间或底部,我需要它来显示菜单和照片的顶部。

有人可以建议我如何设置它以保持顶部的固定位置,以便菜单和照片顶部可见,让用户手动向下滚动。

https://jsfiddle.net/njd9L7ok/

$(document).ready(function () {
    var lastItem = null;
    $('#listingmenu').on('click', 'a', function () {
        newItem = this.getAttribute('href').substring(1);
        if (newItem != lastItem) {
            $('.current').not($(this).closest('li').addClass('current')).removeClass('current');
            // fade out all open subcontents
            $('.pbox:visible').hide(600);
            // fade in new selected subcontent
            $('#' + newItem).show(600);
            lastItem = newItem;
        }
    }).find('a:first').click();
});

最佳答案

您需要防止点击时的默认行为。

$(document).ready(function () {
    $('#listingmenu').on('click', 'a', function (event) {
        event.preventDefault();
        // all your other code
    }).find('a:first').click();
});

关于JavaScript 页面滚动位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32723129/

相关文章:

html - 如何让我的文本在 bootstrap 中使用导航栏的整个宽度?

javascript - 如果没有使用 jQuery 生成的输入字段,则隐藏提交按钮

javascript - 使用 Easycal.js 的 CSS 或 JS 粘性/固定表头 - 两个分开的表

javascript - 异步函数没有按应有的顺序执行

javascript - 如何在超过一定数量后隐藏元素 JavaScript 或 jQuery?

javascript - 在私有(private)方法中使用 `this` 的 jQuery 插件设计模式?

jquery - 如何在 Bootstrap 响应表中保持一行的固定大小?

jquery - 让 jQuery-Mobile 与 webpack 一起工作

javascript - 随机背景更改仅适用于 Firefox?

javascript - 使用 XUL 和 JS 将插件写入 Firefox