搜尋
首頁web前端html教學自訂 Html 元素
自訂 Html 元素Sep 04, 2024 pm 04:52 PM
htmlhtml5HTML TutorialHTML PropertiesHTML tags

以下文章提供了自訂 Html 元素的概述。在html中,我們有許多Web元件的功能;有些具有建立使用者定義或自訂 html 元素的標準能力。它以 html 語言封裝了網頁以提供更多功能。使用一組巢狀的批次元素需要很長時間,這些元素可以與更多自訂網頁功能結合。一些網頁瀏覽器支援自訂元素,例如Mozilla、firefox、google chrome 和Microsoft Edge 瀏覽器;它們支援html 自訂元素、safari 和opera;這些瀏覽器與html 自訂元素不相容;它僅支援自主的用戶定義元素。

文法:

我們將使用 javascript 來定義新的 html 元素,就像自訂元素一樣,因為它是一個全球化的元素,用於在 html 中引入新標籤。因此,當我們使用網頁元素時,語法會有所不同。

Class sample extends HtmlElement
{
default constructor()
{
---some user defined codes---
}
}

以上程式碼是基於java的範例程式碼;這是建立自訂元素的大綱,變更會受網頁影響。

在哪裡使用自訂 Html 元素?

一般html自訂元素包含兩種類型:自主自訂元素和自訂內建元素每當我們在 HTML 中建立自訂元素時,它都會描述類別及其方法、屬性和屬性;有些事件也這樣稱呼。一旦建立了自訂元素,並將其定義為內建的 html 元素,例如 等元素。然後,我們就可以在 html 語言中使用我們的自訂元素。

自治自訂元素包含所有新元素以及使用 HtmlElement 類別擴充的使用者定義元素;它將附帶java標準規則。此外,Customizedbuilt-inElements會建立內建元素,在自治自訂元素中建立自訂元素;每當從網頁中新增或刪除元素時,我們都會告訴瀏覽器如何顯示它。

自主自訂元素使用具有特殊方法的類別來實現上述場景。例如,一些方法是“connectedCallback()”,每當將元素新增至文件時,該方法將用於瀏覽器呼叫。此外,如果在 html 文件中重複新增或刪除該元素,則可以多次呼叫它。 「每當從文件中刪除元素時,此方法都會呼叫瀏覽器;disconnectedCallback()」也可以多次呼叫它來在html文件中重複新增或刪除元素。

observedAttributes() 是傳回屬性名稱陣列以監視反射的變更的方法之一。 attributeChangedCallback(name,oldvalue,newvalue) 方法在將列出並修改任何一個屬性時調用,並且「每當元素移動到html 文件中的新元素時,就會調用「adoptedCallback()」。現在,假設我們使用任何html 元素。使用上面提到的方法來呼叫所需的方法,我們將使用javascript 在網頁中使用它們的功能。

假設我們在 html 中使用一些預設標籤(例如 time>)來計算日期和時間是時間的標籤元素。不過,當時它並沒有自動設定任何時間格式;我們將使用像connectedCallback()這樣的方法;此方法將透過呼叫 來使用瀏覽器。選項,並且該元素也添加到頁面中,或者 html 解析器將幫助檢測它使用內建的 Intl.DateTimeFormat 選項,dateFormatter 將支援整個瀏覽器,這有助於以時間格式很好地顯示。我們也在customElements.define中聲明了新的html元素(標籤名稱,類別名稱);這種格式有助於在腳本中建立自訂元素。

建立自訂元素後還需要升級整個格式,例如我們PC上的時間更新,但它會在腳本中未使用customElements.define方法中的html元素之前更新,因為這不是錯誤;該元素顯示為未知,就像我們所說的非標準html 標籤一樣;之後,它將在css 樣式選擇器中使用,例如

:not(:define) ,然後調用customElements.define 方法,並且它將在它將支援的時間格式選項中升級新實例。 connectCallback() 方法也被調用,然後它們變成:定義的狀態,就像稱為 customElements.get(name)、customElements.whenDefined(name) 的方法一樣,這兩個方法都會傳回名稱作為參數。

Examples of Custom Html Element

Different examples are mentioned below:

Example #1


<script>
class sample extends HTMLElement { // (1)
connectedCallback() {
let d = new Date(this.getAttribute('datetime') || Date.now());
this.innerHTML = new Intl.DateTimeFormat("default", {
month: this.getAttribute('month') || undefined,
day: this.getAttribute('day') || undefined,
year: this.getAttribute('year') || undefined,
minute: this.getAttribute('minute') || undefined,
hour: this.getAttribute('hour') || undefined,
timeZoneName: this.getAttribute('time-zone-name') || undefined,
second: this.getAttribute('second') || undefined,
}).format(d);
}
}
customElements.define("time-formatted", sample);
</script>

<time-formatted datetime="2020-02-19" year="numeric" month="long" day="numeric" hour="numeric" minute="numeric" second="numeric" time-zone-name="long">
</time-formatted>

Output:

自訂 Html 元素

Example #2


<script>
customElements.define('user-information', class extends HTMLElement {
connectedCallback() {
alert(this.innerHTML);
}
});
</script>


<user-information>Sivaraman</user-information>

Output:

自訂 Html 元素

Example #3


<script>
class Example extends HTMLButtonElement {
constructor() {
super();
this.addEventListener('click', () => alert("User!"));
}
}
customElements.define('sample-button', Example, {extends: 'button'});
</script>
<button is="sample-button">Welcome</button>
<button is="sample-button" disabled>Disabled</button>

Output:

自訂 Html 元素

The above three examples will discuss the custom elements in the html languages; In the first example, we already know about the time and date format output using custom tag elements; the second example shows a basic javascript function called after executing the custom elements in the html and final example will be discussed about the same javascript function while we are clicking the html custom tag elements.

Conclusion

The Web components have some processes for connecting with the technologies. It will be used to help the html for reusable purposes across the entire web.Html have the Dom components; it will be used for communicating the user-level data(including custom elements) through the web for data migration.

以上是自訂 Html 元素的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
HTML超文本标记语言--超在那里?(文档分析)HTML超文本标记语言--超在那里?(文档分析)Aug 02, 2022 pm 06:04 PM

本篇文章带大家了解一下HTML(超文本标记语言),介绍一下HTML的本质,HTML文档的结构、HTML文档的基本标签和图像标签、列表、表格标签、媒体元素、表单,希望对大家有所帮助!

html和css算编程语言吗html和css算编程语言吗Sep 21, 2022 pm 04:09 PM

不算。html是一种用来告知浏览器如何组织页面的标记语言,而CSS是一种用来表现HTML或XML等文件样式的样式设计语言;html和css不具备很强的逻辑性和流程控制功能,缺乏灵活性,且html和css不能按照人类的设计对一件工作进行重复的循环,直至得到让人类满意的答案。

web前端笔试题库之HTML篇web前端笔试题库之HTML篇Apr 21, 2022 am 11:56 AM

总结了一些web前端面试(笔试)题分享给大家,本篇文章就先给大家分享HTML部分的笔试题(附答案),大家可以自己做做,看看能答对几个!

总结HTML中a标签的使用方法及跳转方式总结HTML中a标签的使用方法及跳转方式Aug 05, 2022 am 09:18 AM

本文给大家总结介绍a标签使用方法和跳转方式,希望对大家有所帮助!

HTML5中画布标签是什么HTML5中画布标签是什么May 18, 2022 pm 04:55 PM

HTML5中画布标签是“<canvas>”。canvas标签用于图形的绘制,它只是一个矩形的图形容器,绘制图形必须通过脚本(通常是JavaScript)来完成;开发者可利用多种js方法来在canvas中绘制路径、盒、圆、字符以及添加图像等。

html中document是什么html中document是什么Jun 17, 2022 pm 04:18 PM

在html中,document是文档对象的意思,代表浏览器窗口的文档;document对象是window对象的子对象,所以可通过“window.document”属性对其进行访问,每个载入浏览器的HTML文档都会成为Document对象。

html5废弃了哪个列表标签html5废弃了哪个列表标签Jun 01, 2022 pm 06:32 PM

html5废弃了dir列表标签。dir标签被用来定义目录列表,一般和li标签配合使用,在dir标签对中通过li标签来设置列表项,语法“<dir><li>列表项值</li>...</dir>”。HTML5已经不支持dir,可使用ul标签取代。

Html5怎么取消td边框Html5怎么取消td边框May 18, 2022 pm 06:57 PM

3种取消方法:1、给td元素添加“border:none”无边框样式即可,语法“td{border:none}”。2、给td元素添加“border:0”样式,语法“td{border:0;}”,将td边框的宽度设置为0即可。3、给td元素添加“border:transparent”样式,语法“td{border:transparent;}”,将td边框的颜色设置为透明即可。

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尊渡假赌尊渡假赌尊渡假赌

熱工具

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能