feat: Add support for RTL (#64)
This commit is contained in:
parent
67f9717827
commit
e014960e97
@ -68,7 +68,7 @@ class DataTable {
|
|||||||
|
|
||||||
prepareDom() {
|
prepareDom() {
|
||||||
this.wrapper.innerHTML = `
|
this.wrapper.innerHTML = `
|
||||||
<div class="datatable">
|
<div class="datatable" dir="${this.options.direction}">
|
||||||
<div class="dt-header"></div>
|
<div class="dt-header"></div>
|
||||||
<div class="dt-scrollable"></div>
|
<div class="dt-scrollable"></div>
|
||||||
<div class="dt-footer"></div>
|
<div class="dt-footer"></div>
|
||||||
|
|||||||
@ -62,5 +62,6 @@ export default {
|
|||||||
checkedRowStatus: true,
|
checkedRowStatus: true,
|
||||||
dynamicRowHeight: false,
|
dynamicRowHeight: false,
|
||||||
pasteFromClipboard: false,
|
pasteFromClipboard: false,
|
||||||
showTotalRow: false
|
showTotalRow: false,
|
||||||
|
direction: 'ltr'
|
||||||
};
|
};
|
||||||
|
|||||||
@ -48,12 +48,15 @@ export default class Style {
|
|||||||
this._settingHeaderPosition = true;
|
this._settingHeaderPosition = true;
|
||||||
|
|
||||||
requestAnimationFrame(() => {
|
requestAnimationFrame(() => {
|
||||||
const scrollLeft = e.target.scrollLeft;
|
const { scrollLeft, scrollWidth, clientWidth } = e.target;
|
||||||
|
|
||||||
|
let left = this.options.direction === 'rtl' ? scrollWidth - clientWidth - scrollLeft : -scrollLeft;
|
||||||
|
|
||||||
$.style(this.header, {
|
$.style(this.header, {
|
||||||
transform: `translateX(-${scrollLeft}px)`
|
transform: `translateX(${left}px)`
|
||||||
});
|
});
|
||||||
$.style(this.footer, {
|
$.style(this.footer, {
|
||||||
transform: `translateX(-${scrollLeft}px)`
|
transform: `translateX(${left}px)`
|
||||||
});
|
});
|
||||||
this._settingHeaderPosition = false;
|
this._settingHeaderPosition = false;
|
||||||
});
|
});
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user