/ / стовпець з кутовою датою, що перетягується з таблиці - jquery, angularjs, datatables, angular-datatables

кутовий-датабельний стовпець перетягнутий з таблиці - jquery, angularjs, дані, кутові дані

Чи можна уникнути стовпця, а не витягнути з області перегляду таблиці даних, як ви можете зрозуміти самостійно, про що я говорю з цього посилання https://l-lin.github.io/angular-datatables/#/withColReorder

введіть опис зображення тут під час спроби перетягнути стовпець далеко від таблиці даних. Я підняв це питання на офіційному сайті компонента https://github.com/l-lin/angular-datatables/issues/496

(Про всяк випадок, якщо виникне питання, краще пояснює, про що я говорю

Відповіді:

2 для відповіді № 1

Як l-lin вказує, що кутові дані є обгорткоюjQuery dataTables, що забезпечує директиви і переконавшись, що dataTables не конфліктує з кутовими. Щоб змінити основні функціональні можливості, ви все одно повинні змінити ядро.

Ви можете змінити багато речей в бібліотеках ядрах dataTables за допомогою виправлення мавпи. Щоб запобігти перетягуванню заголовка стовпця за межами <thead> Розділ таблиці можна зробити таким чином:

var old_fnMouseMove = $.fn.DataTable.ColReorder.prototype._fnMouseMove;
$.fn.DataTable.ColReorder.prototype._fnMouseMove = function(e) {
var x = e.clientX,
y = e.clientY,
r = document.querySelector("#example thead").getBoundingClientRect(),
within = (x>r.left && x<r.right && y>r.top && y<r.bottom);

if (within) old_fnMouseMove.apply(this, arguments);
}

Вище перевизначає ColReorders mousemove події, коли відбувається перетягування. Якщо миша знаходиться поза межами <thead> елемент просто просто не передавати подію до початкової функції - тим, що перетягування стовпця за межами ефективно запобігається.

демо-дані для кутових даних -> http://plnkr.co/edit/uPv8FoUrJkQWnEaE2AQY?p=preview

Чистий jQuery dataTables demo -> http://jsfiddle.net/0boznoh7/