久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

javascript - 事件的定義有無函數(shù)的區(qū)別

瀏覽:141日期:2023-05-23 09:17:39

問題描述

javascript - 事件的定義有無函數(shù)的區(qū)別

<!doctype html><html lang='en'><head> <meta charset='UTF-8'> <title>跨游覽器封裝函數(shù)</title></head><body> <h1 onclick='alert(’這是html事件綁定方式1’)'>html事件綁定方式1</h1> <h1 onclick='f1()'>html事件綁定方式2</h1> <h2 onclick='f1()'>dom0級事件綁定方式</h2> <script type='text/javascript'>function f1(){ alert(’這是html事件綁定方式2’);}var h2 = document.getElementsByTagName(’h2’);console.log(h2[0]);h2[0].onclick = function(){ alert(’這是dom0級事件綁定方式’);}h2[0].onclick = 'alert(’這是dom0級事件綁定方式’)'; </script> </body></html>

問題解答

回答1:

1.首先h2[0].onclick = 'alert(’這是dom0級事件綁定方式’)';這個寫法你仔細看下就知道是什么意思了!相當于把'alert(’這是dom0級事件綁定方式’)'當成一串字符串賦值給onclick,只是一串字符串,無法起效的!2.然后,<h1 onclick='alert(’這是html事件綁定方式1’)'>html事件綁定方式1</h1>,這個寫法,在html標簽這里綁定的,onclick后面跟著的alert(’這是html事件綁定方式1’),這部分就是函數(shù)的內(nèi)容,就是你點擊了,觸發(fā)了事件,就執(zhí)行的內(nèi)容。跟<h1 onclick='(function(){alert(’這是html事件綁定方式1’)})()'>html事件綁定方式1</h1>這個寫法是等價的,看了這個寫法就知道是怎么回事了!就是相當于,定義了一個自動執(zhí)行的匿名函數(shù),而函數(shù)執(zhí)行的內(nèi)容,就是你寫的alert(’這是html事件綁定方式1’)。3.最后,這個就不多解釋了,這個是原理就是點擊后出發(fā)的事件,執(zhí)行函數(shù)而已!

h2[0].onclick = function(){ alert(’這是dom0級事件綁定方式’);}回答2:

第一個行內(nèi)定義的是DOM元素的attribute,下面訪問DOM.onclick可以看作是訪問的property。

<a onclick='alert(’abc’)'>test</a><script>var a = document.querySelector(’#test’);console.log(a.onclick); // function onclick(event) { alert(’abc’); }a.attributes[’onclick’].value = ’alert(’test’)’;console.log(a.onclick); // function onclick(event) { alert(’test’); }</script>

標簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 太谷县| 息烽县| 河津市| 景宁| 曲水县| 巴彦淖尔市| 临夏县| 闸北区| 唐海县| 阳高县| 麟游县| 平阳县| 太仆寺旗| 大石桥市| 治多县| 寿光市| 仁怀市| 鹿泉市| 金湖县| 皋兰县| 伊春市| 鹤山市| 宜宾市| 通河县| 青冈县| 潼南县| 南江县| 蕲春县| 武义县| 磐石市| 无极县| 平罗县| 德昌县| 灌阳县| 兰考县| 瑞金市| 普兰店市| 苗栗县| 云阳县| 枣阳市| 会同县|