在script中有幾種綁定事件的方法,有的在綁定函數中傳入this參數,有的沒有,那麼,它們之間到底有什麼區別呢?html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <form action="/index.html" method="post"> {% csrf_token %} <input type="text" name="username"/> <a onclick="submit()">提交</a> <a onclick="submit1(this)">提交</a> <a id="fm">提交</a> </form> <script src="/static/js/jquery-3.3.1.min.js"></script> <script> /* 綁定事件中this的用法 */ function submit() { console.log(this) } /* 若是以此種方式綁定事件,括號中不傳入this參數,那麼this在這裏代指的就是整個doucumeng對象 */
function submit1(ths) { console.log(ths) } /* 若是以此種方式綁定事件,括號中傳入this參數,那麼this在這裏代指的就是當前標籤對象 */
$('#fm').click (function submit3() { console.log(this); }); /* 找到當前標籤 若是以此種方式綁定事件,括號中不傳入this參數,那麼this在這裏代指的就是當前標籤對象 */ </script> </body> </html>