Is it possible to add an eventlistener on a DIV?

2020-05-17 02:06发布

I know this function:

document.addEventListener('touchstart', function(event) {
    alert(event.touches.length);
}, false);

But is it possible to add this to a div? Example:

document.getElementById("div").addEventListener('touchstart', function(event) {
        alert(event.touches.length);
    }, false);

I haven't tested it yet, maybe some of you know if it works?

3条回答
2楼-- · 2020-05-17 02:33

Yeah, that's how you do it.

document.getElementById("div").addEventListener("touchstart", touchHandler, false);
document.getElementById("div").addEventListener("touchmove", touchHandler, false);
document.getElementById("div").addEventListener("touchend", touchHandler, false);

function touchHandler(e) {
  if (e.type == "touchstart") {
    alert("You touched the screen!");
  } else if (e.type == "touchmove") {
    alert("You moved your finger!");
  } else if (e.type == "touchend" || e.type == "touchcancel") {
    alert("You removed your finger from the screen!");
  }
}

Or with jQuery

$(function(){
  $("#div").bind("touchstart", function (event) {
    alert(event.touches.length);
  });
});
查看更多
We Are One
3楼-- · 2020-05-17 02:45

Of course, let's assume you have to insert text in h1 element when a user clicks on the button. It's pretty easy to bind HTML's specific element to addEventListener() method

<button id="button">Show me</button>


<h1 id="name"></h1>


document.getElementById("button").addEventListener("click", function(){
  document.getElementById("name").innerHTML = "Hello World!";
});
查看更多
神经病院院长
4楼-- · 2020-05-17 02:48

The other way round if you are not using addEventListener, probably a alternative to get control over ID.

 $(document).ready(function () {
            $('#container1').on("contextmenu", function (e) {
                e.preventDefault();
            });
        });
查看更多
登录 后发表回答