男女囗交大图片26交,日韩欧美群交P片內射中文,老司机带带我免费看,av永久免费网站在线观看

免費獲取策劃方案多一份參考,總有益處

重慶網(wǎng)站建設

Website construction

案例778

重慶網(wǎng)站建設

回到基本問題:事件委托

來源:派臣科技|時間:2020-11-14|瀏覽:

Back to basics是一系列的小帖子,我在其中解釋了我在項目中一直使用的基本的、無依賴的web技術。這些都不是什么啟示,但是這些年來幫助我建立了牢固的,容易維護的項目。

在構建web接口時,我最喜歡的一個技巧是事件委托

事件不僅僅發(fā)生在應用它們的元素上。相反,它們沿著DOM樹一直到事件,然后再返回。事件生命周期的這些階段稱為事件冒泡和事件捕獲。

這樣做的實際結果是,您不需要對文檔中的每個元素應用事件處理程序。相反,通常父元素上的一個處理程序就足夠了。在很久以前,這是非常重要的,因為老的瀏覽器經(jīng)常有與事件處理有關的內存泄漏。

假設你有一個鏈接列表,而不是遵循這些鏈接,你想做一些代碼時,用戶點擊他們:

這是可行的,但有兩個問題:

1. 當列表的內容發(fā)生更改時,您需要重新索引該列表(如再次調用assignhandlers())

2. 您只對被單擊的鏈接作出反應,如果您還想在單擊列表項時執(zhí)行某些操作,則需要分配更多的處理程序。

你可以試著在這個例子中點擊“切換更多的狗”按鈕。它向列表中添加更多項目,當您單擊它們時,什么也不會發(fā)生。

您可以嘗試這里的事件委托示例,代碼可以在GitHub (event- delegate .html)上找到。如果你現(xiàn)在點擊“切換更多的狗”按鈕,并點擊任何小狗的鏈接,你會看到它仍然工作。

您可以做一些事情來確定單擊事件發(fā)生在哪個元素上。這里最重要的部分是“let t = e.target;”行,它存儲了當前由事件捕獲/冒泡循環(huán)報告的元素。如果我想對一個鏈接做出反應,我將檢查目標上是否存在一個“href”。如果我想對列表項做出反應,我將' nodeName '與' LI '進行比較。注意,如果進行這種檢查,節(jié)點名總是大寫的。

我真的很喜歡事件委托,因為它給了我更多的靈活性,而且我不必擔心內容的變化。處理者只是躺在那里等待,直到需要它。

留言

返回頂部

君
重慶網(wǎng)站建設重慶網(wǎng)站建設回到基本問題:事件委托
孝义市| 泊头市| 平顺县| 南皮县| 仁化县| 丰宁| 凤台县| 壤塘县| 岚皋县| 大方县| 南岸区| 卢氏县| 济宁市| 郎溪县| 奉化市| 二手房| 东乡族自治县| 陇西县| 内江市| 寿宁县| 达孜县| 星子县| 双江| 珲春市| 汉沽区| 揭西县| 怀来县| 从江县| 河北省| 根河市| 芦溪县| 茶陵县| 望谟县| 龙门县| 瑞丽市| 华宁县| 泽库县| 富源县| 大英县| 平度市| 中阳县|