Mercurial Hosting > dad
changeset 24:f8c97193c772 default tip
indexOf
| author | Franklin Schmidt <fschmidt@gmail.com> |
|---|---|
| date | Tue, 20 Jan 2026 18:48:04 -0700 |
| parents | 650773682588 |
| children | |
| files | src/alternatives/draggabilly.html src/alternatives/interactjs.html src/examples/list.html src/examples/list2.html src/examples/nested.html |
| diffstat | 5 files changed, 15 insertions(+), 55 deletions(-) [+] |
line wrap: on
line diff
diff -r 650773682588 -r f8c97193c772 src/alternatives/draggabilly.html --- a/src/alternatives/draggabilly.html Wed Jul 09 17:52:51 2025 -0600 +++ b/src/alternatives/draggabilly.html Tue Jan 20 18:48:04 2026 -0700 @@ -26,18 +26,10 @@ dragEntered = null; } - function indexOf(a,el) { - for( let i=0; i<a.length; i++ ) { - if( a[i] === el ) - return i; - } - return -1; - } - function onDragEnter(dragging,entered) { - let divs = document.querySelectorAll('div[drag]'); - let iEntered = indexOf(divs,entered); - let iDragging = indexOf(divs,dragging); + let divs = Array.from(document.querySelectorAll('div[drag]')); + let iEntered = divs.indexOf(entered); + let iDragging = divs.indexOf(dragging); console.log(iDragging+' '+iEntered); let parent = entered.parentNode; if( iDragging < iEntered ) {
diff -r 650773682588 -r f8c97193c772 src/alternatives/interactjs.html --- a/src/alternatives/interactjs.html Wed Jul 09 17:52:51 2025 -0600 +++ b/src/alternatives/interactjs.html Tue Jan 20 18:48:04 2026 -0700 @@ -34,14 +34,6 @@ event.target.style.transform = null; } - function indexOf(a,el) { - for( let i=0; i<a.length; i++ ) { - if( a[i] === el ) - return i; - } - return -1; - } - function dragEnterListener(event) { //return; console.log(event); @@ -49,9 +41,9 @@ let dragging = event.relatedTarget; if( entered === dragging ) return; - let divs = document.querySelectorAll('div[drag]'); - let iEntered = indexOf(divs,entered); - let iDragging = indexOf(divs,dragging); + let divs = Array.from(document.querySelectorAll('div[drag]')); + let iEntered = divs.indexOf(entered); + let iDragging = divs.indexOf(dragging); console.log(iDragging+' '+iEntered); let parent = entered.parentNode; if( iDragging < iEntered ) {
diff -r 650773682588 -r f8c97193c772 src/examples/list.html --- a/src/examples/list.html Wed Jul 09 17:52:51 2025 -0600 +++ b/src/examples/list.html Tue Jan 20 18:48:04 2026 -0700 @@ -24,22 +24,14 @@ event.dropzone.removeAttribute('in'); }; - function indexOf(a,el) { - for( let i=0; i<a.length; i++ ) { - if( a[i] === el ) - return i; - } - return -1; - } - dad.onDrop = function(event) { let dropzone = event.dropzone; if( !dropzone ) return; let original = event.original - let items = document.querySelectorAll('[item]'); - let iDropzone = indexOf(items,dropzone); - let iOriginal = indexOf(items,original); + let items = Array.from(document.querySelectorAll('[item]')); + let iDropzone = items.indexOf(dropzone); + let iOriginal = items.indexOf(original); let where = iDropzone < iOriginal ? 'beforebegin' : 'afterend'; dropzone.insertAdjacentElement(where,original); };
diff -r 650773682588 -r f8c97193c772 src/examples/list2.html --- a/src/examples/list2.html Wed Jul 09 17:52:51 2025 -0600 +++ b/src/examples/list2.html Tue Jan 20 18:48:04 2026 -0700 @@ -13,20 +13,12 @@ </style> <script src="/dad.js"></script> <script> - function indexOf(a,el) { - for( let i=0; i<a.length; i++ ) { - if( a[i] === el ) - return i; - } - return -1; - } - dad.onEnter = function(event) { let dropzone = event.dropzone; let original = event.original; - let items = document.querySelectorAll('[item]'); - let iDropzone = indexOf(items,dropzone); - let iOriginal = indexOf(items,original); + let items = Array.from(document.querySelectorAll('[item]')); + let iDropzone = items.indexOf(dropzone); + let iOriginal = items.indexOf(original); let where = iDropzone < iOriginal ? 'beforebegin' : 'afterend'; dropzone.insertAdjacentElement(where,original); };
diff -r 650773682588 -r f8c97193c772 src/examples/nested.html --- a/src/examples/nested.html Wed Jul 09 17:52:51 2025 -0600 +++ b/src/examples/nested.html Tue Jan 20 18:48:04 2026 -0700 @@ -18,14 +18,6 @@ </style> <script src="/dad.js"></script> <script> - function indexOf(a,el) { - for( let i=0; i<a.length; i++ ) { - if( a[i] === el ) - return i; - } - return -1; - } - dad.whatToDrag = function(draggable) { return draggable.parentNode; }; @@ -37,9 +29,9 @@ if( dropzone.getAttribute('drop') !== filter ) { return false; } - let items = document.querySelectorAll(`[drop="${filter}"]`); - let iDropzone = indexOf(items,dropzone); - let iOriginal = indexOf(items,original); + let items = Array.from(document.querySelectorAll(`[drop="${filter}"]`)); + let iDropzone = items.indexOf(dropzone); + let iOriginal = items.indexOf(original); let where = iDropzone < iOriginal ? 'beforebegin' : 'afterend'; dropzone.insertAdjacentElement(where,original); };
