搜尋
首頁web前端js教程UI Events 使用者介面事件_javascript技巧

UI Events並不是直接與使用者行為相關,UI Event 包含如下:

  DomActivate:當元素被使用者的某些行為啟動時,觸發該事件,例如使用者的滑鼠或鍵盤事件。這事件在DOM3級事件中被放棄了,FF2 和chrome支持,猶豫跨瀏覽器實作機制的不同,不建議使用這個事件。

  load:在window物件上觸發是當頁面載入完畢之後觸發的,在frameset 是當所有的frames都載入完畢之後觸發,當指img標籤時,是指圖片載入完畢之後等等。

  unload:在window物件上觸發是當頁面卸載完畢之後觸發的,在frameset 是當所有的frames都卸載完畢之後觸發,當指img標籤時,是指圖片卸載完畢之後等等。

  abort:當一個元素沒有完全載入完,在使用者停止了下載操作之前,而觸發。

  error:當window的javascript發生錯誤時觸發,當img不能加載是觸發,或者object元素不能被加載時觸發,當frameset中的一個或多個frame不能被加載時觸發,
  select:當使用者選擇textbox中一個或多個字元時觸發該事件。
  resize:當window或frame被改變大小的時候觸發。
  scroll:當使用者捲動一個有捲軸的元素時觸發。
  絕大多數的HTML事件,要麼與window物件相關,要麼與form控制項相關。
  判斷一個瀏覽器是否在DOM2級事件上支援HTML事件,可以採用下面的程式碼:

  var isSupport = document.implementation.hasFeature('HTMLEvents','2.0');

  若果在dom2級事件上實現的話,將會傳回true,true否則回傳false

  var isSupported = document.implementation.hasFeature(“UIEvent”, “3.0”);

  在dom3級上同理。

The load Event

  load事件可能是javascript最常用到的。對window物件而言,當網頁完全載入完畢時,觸發load事件。總而言之,任何發生在window上的事件可以透過body元素的屬性進行訪問,因為在HTML中是沒有權限訪問window元素。

  對於img標籤當你制定img標籤的src屬性時,同樣可以觸發他的load事件。

  如下: 

EventUtil.addHandler(window, “load”, function(){ 
var image = new Image(); 
EventUtil.addHandler(image, “load”, function(event){ 
alert(“Image loaded!”); 
}); 
image.src = “smile.gif”; 
});


  同樣也有其他的元素以一種非標準的方式支援load event,如script標籤元素,當在IE9 、FF、IE9 、FF、 Opera、Chrome、Safari3.0 中動態加script並且載入完成時將觸發script的load事件,與img元素不同,js檔案開始載入是在src屬性被賦值之後,而且這個元素已經被加入到document之中。因此Event handler的順序與src賦值無關。
  範例如下: 

EventUtil.addHandler(window, “load”, function(){ 
var script = document.createElement(“script”); 
script.type = “text/javascript”; 
EventUtil.addHandler(script, “load”, function(event){ 
alert(“Loaded”); 
}); 
script.src = “example.js”; 
document.body.appendChild(script); 
});



 IE和Opera同樣支援link標籤的load事件。

The unload Event
  與load事件相對的就是 unload事件,這個事件當document完全被卸載的時候觸發。典型的例子就是,瀏覽器從一個一面導航到另一個頁面的時候會觸發該事件,並且通常是用這個事件來釋放內存,避免沒有必要的內存佔用。與load事件相似,unload事件可以透過兩種方式進行建立即透過js和透過HTML屬性來建立。
  對於unload事件的處理函數要格外的小心,因為自從卸載事件被激發,並不是所有的對像都是可用的,當頁面被加載仍然可用。試圖操作Dom節點的位置或改變外觀會出現錯誤。

The resize Event

  當瀏覽器視窗的長度和高度被改變時會觸發resize 事件,這個事件發生在window物件上,註冊方式與前兩個事件的註冊方式相同。

  與其他發生在window物件上的事件相同,在dom瀏覽器中該事件的target指的是document,而IE8 和 更早版本的瀏覽器中是沒有相關屬性可以使用的。

  在不同的瀏覽器中resize事件存在這很多不同,在IE safari chrome opera中只要修改一個像素的值,該事件就會被觸發。而在FF中只有當重置大小操作停止時才會觸發這個事件。且瀏覽器的最大 最小化同樣會觸發此事件。

The scroll Event

  雖然scroll事件發生在window物件上,但他也同樣適用於頁級元素。在混在模式下,對應的變化反映在

元素的scrollLeft和scrollTop屬性;在標準模式下,對應的變化發生在元素上,除了safari,其他的瀏覽器都遵守上述的規則,例如: 
EventUtil.addHandler(window, “scroll”, function(event){ 
if (document.compatMode == “CSS1Compat”){//标准模式反映在html上。 
alert(document.documentElement.scrollTop); 
} else { 
alert(document.body.scrollTop); 
} 
});

以上就是UI Events 使用者介面事件_javascript技巧的內容,更多相關內容請關注PHP中文網(www.php.cn)!


陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
es6数组怎么去掉重复并且重新排序es6数组怎么去掉重复并且重新排序May 05, 2022 pm 07:08 PM

去掉重复并排序的方法:1、使用“Array.from(new Set(arr))”或者“[…new Set(arr)]”语句,去掉数组中的重复元素,返回去重后的新数组;2、利用sort()对去重数组进行排序,语法“去重数组.sort()”。

艾尔登法环ui怎么一直显示艾尔登法环ui怎么一直显示Mar 11, 2024 pm 04:31 PM

在艾尔登法环中这款游戏的ui页面在一段时间以后是会自动进行隐藏的,有很多玩家不知道ui怎么一直显示,玩家可以在显示以及声音配置中选择其中的量表显示配置,点击开启即可。艾尔登法环ui怎么一直显示1、首先我们进入主菜单后,点击【系统配置】。2、在【显示及声音配置】界面,选择其中的量表显示配置。3、点击开启即可完成。

JavaScript的Symbol类型、隐藏属性及全局注册表详解JavaScript的Symbol类型、隐藏属性及全局注册表详解Jun 02, 2022 am 11:50 AM

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于Symbol类型、隐藏属性及全局注册表的相关问题,包括了Symbol类型的描述、Symbol不会隐式转字符串等问题,下面一起来看一下,希望对大家有帮助。

Vue 中常见的 UI 组件库有哪些?Vue 中常见的 UI 组件库有哪些?Jun 11, 2023 am 11:47 AM

Vue是一款流行的JavaScript框架,它使用组件化的方式构建Web应用程序。在Vue生态系统中,有很多UI组件库可以帮助您快速构建漂亮的界面,并提供丰富的功能和交互效果。在本文中,我们将介绍一些常见的VueUI组件库。ElementUIElementUI是一款由饿了么团队开发的Vue组件库,它为开发人员提供了一组优雅,

两位谷歌华人研究员发布首个纯视觉「移动UI理解」模型,四大任务刷新SOTA两位谷歌华人研究员发布首个纯视觉「移动UI理解」模型,四大任务刷新SOTAApr 12, 2023 pm 04:40 PM

对AI来说,「玩手机」可不是一件易事,光是识别各种用户界面(user interface, UI)就是一大难题:不光要识别出各个组件的类型,还要根据其使用的符号、位置来判断组件的功能。对移动设备UI的理解,能够帮助实现各种人机交互任务,比如UI自动化等。之前的工作对移动UI的建模通常依赖于屏幕的视图层次信息,直接利用了UI的结构数据,并借此绕过了从屏幕像素开始对组件进行识别的难题。不过并不是所有的场景下都有可用的视图层次,这种方法通常会因为对象描述的缺失或结构信息的错位而输出错误结果,所以尽管使

JavaScript对象的构造函数和new操作符(实例详解)JavaScript对象的构造函数和new操作符(实例详解)May 10, 2022 pm 06:16 PM

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于对象的构造函数和new操作符,构造函数是所有对象的成员方法中,最早被调用的那个,下面一起来看一下吧,希望对大家有帮助。

JavaScript面向对象详细解析之属性描述符JavaScript面向对象详细解析之属性描述符May 27, 2022 pm 05:29 PM

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于面向对象的相关问题,包括了属性描述符、数据描述符、存取描述符等等内容,下面一起来看一下,希望对大家有帮助。

javascript怎么移除元素点击事件javascript怎么移除元素点击事件Apr 11, 2022 pm 04:51 PM

方法:1、利用“点击元素对象.unbind("click");”方法,该方法可以移除被选元素的事件处理程序;2、利用“点击元素对象.off("click");”方法,该方法可以移除通过on()方法添加的事件处理程序。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境