“Użyj przeciągnięcia i upuść” Kod odpowiedzi

Użyj przeciągnięcia i upuść

   <DragDropContext onDragEnd={handleOnEnd}>
        <Droppable droppableId="droppable-1">
          {(provided, _snapshot) => (
            <div ref={provided.innerRef}>
              {faqList.map((faq, idx) => {
                return (
                  <Draggable
                    draggableId={String(faq.id)}
                    key={faq.id}
                    index={idx}>
                    {(provided, _snapshot) => (
                      <div
                        ref={provided.innerRef}
                        {...provided.draggableProps}
                        {...provided.dragHandleProps}>
                          {/* YOUR_CONTENT_HERE */}
                      </div>
                    )}
                  </Draggable>
                );
              })}
              {provided.placeholder}
            </div>
          )}
        </Droppable>
      </DragDropContext>
Stern

przeciągnij i upuść

/* draggable element */
const item = document.querySelector('.item');

item.addEventListener('dragstart', dragStart);

function dragStart(e) {
    e.dataTransfer.setData('text/plain', e.target.id);
    setTimeout(() => {
        e.target.classList.add('hide');
    }, 0);
}


/* drop targets */
const boxes = document.querySelectorAll('.box');

boxes.forEach(box => {
    box.addEventListener('dragenter', dragEnter)
    box.addEventListener('dragover', dragOver);
    box.addEventListener('dragleave', dragLeave);
    box.addEventListener('drop', drop);
});


function dragEnter(e) {
    e.preventDefault();
    e.target.classList.add('drag-over');
}

function dragOver(e) {
    e.preventDefault();
    e.target.classList.add('drag-over');
}

function dragLeave(e) {
    e.target.classList.remove('drag-over');
}

function drop(e) {
    e.target.classList.remove('drag-over');

    // get the draggable element
    const id = e.dataTransfer.getData('text/plain');
    const draggable = document.getElementById(id);

    // add it to the drop target
    e.target.appendChild(draggable);

    // display the draggable element
    draggable.classList.remove('hide');
}
Code language: JavaScript (javascript)
Enchanting Echidna

Odpowiedzi podobne do “Użyj przeciągnięcia i upuść”

Pytania podobne do “Użyj przeciągnięcia i upuść”

Więcej pokrewnych odpowiedzi na “Użyj przeciągnięcia i upuść” w JavaScript

Przeglądaj popularne odpowiedzi na kod według języka

Przeglądaj inne języki kodu