如果我無(wú)法注冊(cè)自定義元素,我注意到我仍然可以:使用CSS設(shè)置未注冊(cè)元素的樣式使用JS將事件添加到未注冊(cè)的元素等例子:// REGISTER <my-custom-element-1>class MyRegisteredCustomElement1 extends HTMLElement { constructor() { super(); }};customElements.define('my-custom-element-1', MyRegisteredCustomElement1);// ATTACH EVENT LISTENERS TO BOTH CUSTOM ELEMENTSconst myCustomElement1 = document.getElementsByTagName('my-custom-element-1')[0];const myCustomElement2 = document.getElementsByTagName('my-custom-element-2')[0];const customElementAlert = (e) => { switch (e.target.nodeName.toLowerCase()) { case ('my-custom-element-1') : console.log('I\'m a registered custom element and I can be scripted and styled.'); break; case ('my-custom-element-2') : console.log('I\'m an unregistered custom element. Nevertheless, I can be scripted and styled TOO.'); break; }}myCustomElement1.addEventListener('click', customElementAlert, false);myCustomElement2.addEventListener('click', customElementAlert, false);:not(:defined) { border: 1px dashed rgb(0, 0, 0);}my-custom-element-1,my-custom-element-2 { float: left; display: inline-block; width: 100px; height: 100px; margin-right: 12px; padding: 6px; text-align: center; font-weight: bold; cursor: pointer;}my-custom-element-1 { color: rgb(255, 255, 255); background-color: rgb(255, 0, 0);}my-custom-element-1::after { content: 'I\'m a registered custom element.\A CLICK ME';}my-custom-element-2 { background-color: rgb(255, 255, 0);}my-custom-element-2::after { content: 'I\'m an unregistered custom element.\A CLICK ME';}<my-custom-element-1></my-custom-element-1><my-custom-element-2></my-custom-element-2>如果未注冊(cè)的自定義元素可以設(shè)置樣式和腳本,那么注冊(cè)自定義元素具體可以實(shí)現(xiàn)什么功能?
未注冊(cè)的 HTML 自定義元素和注冊(cè)的 HTML 自定義元素有什么區(qū)別?
qq_遁去的一_1
2023-08-24 10:05:06