Handsontable - 粘贴到单元格时禁用自动向上滚动

时间:2014-07-06 06:43:33

标签: javascript jquery scroll handsontable

当我粘贴到一个靠近页面顶部的单元格中时,页面会自动向上滚动,使窗口位于单元格的中心。

我试图在jquery.handsontable.full.js中找到导致此问题的代码,希望禁用它,但还没有成功。

非常感谢一些帮助!

2 个答案:

答案 0 :(得分:1)

在过去的几周里,我一直在努力解决同样的问题,直到今天,我设法修复它而不编辑库。

在我初始化手势的地方,我添加了以下内容:

$(document).ready(function () {
    var position_Y_before = null;

    $(".handsontable").handsontable({
        //some code here for initializing the table and its functions

        //Then I added this callback function
        beforeKeyDown: function(e) {
            position_Y_before = window.pageYOffset || 0;
        };

    });

    //Here we prevent from scrolling to top of page after pasting to handsontable with cmd+v or ctrl+v
    $(window).scroll(function(){
        if(position_Y_before != null){
            window.scrollTo(0, position_Y_before);
            position_Y_before = null;
        }
    });

});

这至少对我有用,希望它对你有所帮助!

答案 1 :(得分:0)

关于此问题,请参阅comment wiwade

也许这是一个hacky修复,但在谷歌Chrome版本37.0.2062.120(64位)上工作得很好

更改

style.top = '-10000px';
style.left = '-10000px';

style.top = '0px';
style.left = '0px';
style.zIndex = '-99999';

在copypaste.js,jquery.handsontable.full.js或jquery.handsontable.js