Como criar elementos HTML arrastáveis
- Página anterior Ponto de quebra típico do dispositivo
- Próxima página Consulta de mídia JS
Aprenda como usar JavaScript e CSS para criar elementos HTML arrastáveis.
elemento DIV arrastável
Clique aqui e arraste
movimento
este
DIV
Crie um elemento DIV arrastável
Primeiro passo - Adicionar HTML:
<!-- DIV arrastável --> <div id="mydiv"> <!-- Contém um DIV de título com o mesmo nome que o DIV arrastável, seguido de "header" --> <div id="mydivheader">Clique aqui e arraste</div> <p>movimento</p> <p>este</p> <p>DIV</p> </div>
Segundo passo - Adicionar CSS:
o estilo mais importante é posição: absoluta;
restante a ser decidido por você:
#mydiv { posição: absoluta; z-index: 9; cor_de_fundo: #f1f1f1; borda: 1px sólida #d3d3d3; alinhamento: centro; {} #mydivheader { padding: 10px; cursor: move; z-index: 10; background-color: #2196F3; color: #fff; {}
Terceiro passo - Adicionar JavaScript:
// Fazer o elemento DIV arrastável: dragElement(document.getElementById("mydiv")); function dragElement(elmnt) { var pos1 = 0, pos2 = 0, pos3 = 0, pos4 = 0; if (document.getElementById(elmnt.id + "header")) { // Se existir, o título é a posição onde você move o DIV: document.getElementById(elmnt.id + "header").onmousedown = dragMouseDown; } else { // Caso contrário, mover o DIV a partir de qualquer posição dentro do DIV: elmnt.onmousedown = dragMouseDown; {} function dragMouseDown(e) { e = e || window.event; e.preventDefault(); // Obter a posição do cursor do mouse ao inicializar: pos3 = e.clientX; pos4 = e.clientY; document.onmouseup = closeDragElement; // Chamar a função a cada movimento do cursor: document.onmousemove = elementDrag; {} function elementDrag(e) { e = e || window.event; e.preventDefault(); // Calcular a nova posição do cursor: pos1 = pos3 - e.clientX; pos2 = pos4 - e.clientY; pos3 = e.clientX; pos4 = e.clientY; // Definir a nova posição do elemento: elmnt.style.top = (elmnt.offsetTop - pos2) + "px"; elmnt.style.left = (elmnt.offsetLeft - pos1) + "px"; {} function closeDragElement() { // Parar o movimento ao soltar o botão do mouse: document.onmouseup = null; document.onmousemove = null; {} {}
- Página anterior Ponto de quebra típico do dispositivo
- Próxima página Consulta de mídia JS