我正在研究 rtl。我的标记是:
<div class="data_header">
<div class="data_scroll_head">
<table class="table"></table>
</div>
<div class="data_scroll_body">
<table class="table"> </table>
</div>
</div>
当我滚动正文时,我设置了页眉左边距/右边距。 margin 依赖于一个方向。
var offset = $(e.currentTarget).scrollLeft();
e.data.$('.data_scroll_head table').css('margin-left', -1 * offset);
e.data.options.offset = offset;
最佳答案
在用谷歌搜索这个问题后,除了原始的硬编码示例,我一无所获。
答案是:
onTableDataScroll: function (e) {
var offset = $(e.currentTarget).scrollLeft();
if(UserSettings.get('direction').isRTL) {
var bodyClientWidth = e.currentTarget.clientWidth;
var tableBodyWidth = $(e.currentTarget).children('.table').outerWidth();
e.data.$('.data_scroll_head table').css('margin-right', bodyClientWidth - tableBodyWidth + offset);
} else {
e.data.$('.data_scroll_head table').css('margin-left', -1 * offset);
}
e.data.options.offset = offset;
},
我相信这个例子非常有用。最终公式为 bodyClientWidth - tableBodyWidth + offset。
关于javascript - 向右滚动模拟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34119447/