使用脚本设置onclick事件

Γεώ*_*κης 21 html javascript events dom javascript-events

我想我的scriptonclick的properity <div>.

我用这个Html代码:

<div id="forgotpass">Forgot Password?</div>
Run Code Online (Sandbox Code Playgroud)

我希望当用户单击要运行<div>forgotpass()函数时,但我不想使用它:

<div id="forgotpass" onclick="forgotpass();">Forgot Password?</div>
Run Code Online (Sandbox Code Playgroud)

Sum*_*ner 47

或者,如果你不使用jQuery:

document.getElementById('forgotpass').onclick = forgotpass;
Run Code Online (Sandbox Code Playgroud)


Dan*_*sky 26

纯JavaScript:

function addListener(element, eventName, handler) {
  if (element.addEventListener) {
    element.addEventListener(eventName, handler, false);
  }
  else if (element.attachEvent) {
    element.attachEvent('on' + eventName, handler);
  }
  else {
    element['on' + eventName] = handler;
  }
}

function removeListener(element, eventName, handler) {
  if (element.addEventListener) {
    element.removeEventListener(eventName, handler, false);
  }
  else if (element.detachEvent) {
    element.detachEvent('on' + eventName, handler);
  }
  else {
    element['on' + eventName] = null;
  }
}

addListener(document.getElementById('forgotpass'), 'click', forgotpass);
Run Code Online (Sandbox Code Playgroud)

jQuery的:

$(document).ready(function() {
  $("#forgotpass").click(forgotPass);
});
Run Code Online (Sandbox Code Playgroud)

要么:

$(document).ready(function() {
  $("#forgotpass").click(function() {
    forgotPass();
  });
});
Run Code Online (Sandbox Code Playgroud)