防止列表框滚动到被选择的项目(使用jquery)

发布于 2024-12-02 06:24:39 字数 290 浏览 0 评论 0原文

我有一个列表框,其中的项目可以与其他项目位于某种组中。 当选择一个项目时,将使用 jquery 选择该组中的所有项目。

列表框向下滚动到 jquery 正在选择的项目,这真的很烦人。我想停留在用户选择的项目的位置。

那么,当选择项目时,如何防止列表框向下滚动呢?

jsfiddle 示例在这里: 示例

编辑:单击示例中的项目编号 10,他会转到78,这就是问题所在。

I have a listbox, with items that can be in some kind of group with other items.
When one item is selected, all items from the group are selected with jquery.

Its really annoying that the listbox scrolls down to the items that jquery is selecting. I want to stay at the position of the item selected by the user.

So how can i prevent the listbox from scrolling down when items get selected?

jsfiddle example here: example

EDIT: click on item number 10 in the example, and he goes to 78, thats the issue here.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

时光匆匆的小流年 2024-12-09 06:24:39

你可以试试这个:

$('#lb').change(function() { 

    var x = $(this).scrollTop();

    $('#lb option:selected').each(function() { 
        var groupName = $(this).attr('group'); 
        if (groupName !== undefined) { 
            $('#lb option[group=' + groupName + ']').each(function() { 
                this.selected = true; 
            }); 
        }

    }); 

     $(this).scrollTop(x); 
} );

You can try this:

$('#lb').change(function() { 

    var x = $(this).scrollTop();

    $('#lb option:selected').each(function() { 
        var groupName = $(this).attr('group'); 
        if (groupName !== undefined) { 
            $('#lb option[group=' + groupName + ']').each(function() { 
                this.selected = true; 
            }); 
        }

    }); 

     $(this).scrollTop(x); 
} );
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文