Función D3.js ratón()

La función d3.mouse() en D3.js se usa para devolver la coordenada x y la coordenada y del evento actual. Si se hace clic en el evento, devuelve la posición x e y del clic.

Sintaxis:

d3.mouse(container);

Parámetros: esta función acepta un solo parámetro como se mencionó anteriormente y se describe a continuación:

  • contenedor: Es el nombre del contenedor o la etiqueta HTML a la que se adjunta el evento.

Valores devueltos: Devuelve el array de coordenadas x e y.

Los siguientes ejemplos ilustran la función mouse() de D3.js en JavaScript:

Ejemplo 1:

HTML

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8" />
        <meta
            name="viewport"
            path1tent="width=device-width, 
                       initial-scale=1.0"/>
        <title>D3.js mouse() Function</title>
    </head>
    <style>
        div {
            width: 200px;
            height: 200px;
            background-color: green;
        }
    </style>
    <body>
        <div></div>
        <script src=
"https://d3js.org/d3.v4.min.js">
        </script>
        <script src=
"https://d3js.org/d3-selection.v1.min.js">
        </script>
        <script>
            let btn = document.querySelector("div");
            var div = d3.select("div");
            div.on("click", createDot);
            function createDot() {
                
                // Using d3.mouse() function
                let pos = d3.mouse(this);
                console.log(pos);
            }
        </script>
    </body>
</html>

Producción:

Ejemplo 2:

HTML

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8" />
        <meta
            name="viewport"
            path1tent="width=device-width, 
                       initial-scale=1.0"/>
        <title>D3.js mouse() Function</title>
    </head>
    <style>
        .div {
            width: 200px;
            height: 200px;
            background-color: green;
            overflow: hidden;
        }
        div {
            background-color: red;
            width: 10px;
            height: 10px;
        }
    </style>
    <body>
        <h2>click on the box</h2>
        <div class="div"></div>
        <script src=
"https://d3js.org/d3.v4.min.js">
        </script>
        <script src=
"https://d3js.org/d3-selection.v1.min.js">
        </script>
        <script>
            let btn = document.querySelector("div");
            var div = d3.select("div");
            div.on("click", createDot);
            function createDot() {
                
                // Using d3.mouse() function
                let pos = d3.mouse(this);
                console.log(pos);
                d3.select("div")
                    .append("div")
                    .style("background-color", "white")
                    .style("position", "absolute")
                    .style("margin-left", `${pos[0] - 10}px`)
                    .style("margin-right", `${pos[0] - 10}px`)
                    .style("margin-top", `${pos[1] - 10}px`)
                    .style("margin-bottom", `${pos[1] - 10}px`);
            }
        </script>
    </body>
</html>

Producción:

Antes de hacer clic en la casilla:

Después de hacer clic en el cuadro:

Publicación traducida automáticamente

Artículo escrito por TARuN y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *