Home Web Front-end H5 Tutorial Introduction to html5.2 dialog

Introduction to html5.2 dialog

Jul 03, 2018 am 10:03 AM
dialog

This article mainly introduces the relevant information about the detailed introduction of html5.2 dialog. The content is quite good. I will share it with you now and give it as a reference.

On December 24, 2017, the HTML5.2 standard was solidified, which also meant that the mobile terminal entered the HTML5.3 planning stage. Although HTML5.2 was solidified, some new internal specifications were not implemented in mobile browsers. The support in html still needs to be improved. Here we take a look at a commonly used tag that is newly included in the standard. It is the dialog tag.

1. Written in front

Speaking of the dialog tag, many people may be unfamiliar with it. After all, this tag is only available for chrome browsing until the HTML5.2 standard is fixed. It is only supported by the device, so as for the purpose of this tag, it can be clearly understood based on the semantics, conversation.

What we may think of here is alert, confirm and other pop-up windows. Yes, they are of the same family, they are all pop-up boxes. Next, we will briefly take a look at some properties of the dialog tag. and usage scenarios.

2. Use tags

<dialog open="">      
 <h2>Title</h2>    
 <p>Content</p>
</dialog>
Copy after login

Since it is a tag, it is actually the same as our commonly used p, p and other tags Likewise, as shown in the sample code above, it supports arbitrary other elements internally.

Here, you may notice that the open attribute in the above sample code, yes, this is used to control the display and hiding of this pop-up window. Of course, you can also use css as you like. To control, it will cause exceptions when using the auxiliary functions of some devices (such as accessibility, screen reading software, etc.), so it is recommended to use the standard display and hide functions.

3. Supported default methods

First of all, the dialog tag is an example of HTMLDialogElement, inherited from HTMLElement, so it belongs to the same category as the p tag. The only difference between hierarchical tags is that they have more default functions than p. In this section, we will take a look at what default methods dialog has for us to use.

var dialog = document.getElementById("dialog");
// 假设页面中,有一个id=dialog的dialog标签

// 关闭dialog
dialog.close();

// 以toast的形式显示dialog
dialog.show();

// 以模态框的形式显示dialog
dialog.showModal();

// dialog.close()调用时传入的参数值
dialog.returnVlaue;

// dialog的显示状态
dialog.open;
Copy after login

You can go to the example first, operate it, and then see what the features are, and then come back to compare. The following summary:

1: The close method can be called multiple times, even in the hidden state, and can be called again.

2: close can pass in a variable, which must be a string and expressed in returnVlaue.

3: The show method can also be called multiple times, even in the hidden state, without any problems.

4: The show method will not change the position of the toast. The pop-up box is still at the original position after the show method is called.

5: show method, the display position is immediately behind the previous element, centered, without a mask layer behind it, the z-index display method is similar to the relative without z-index setting (if before this , if showModal has not been called).

6: If showModal has been called, after the show method, the element is displayed at the position displayed by showModal and will not change (even if the content height changes a lot).

7: If there are two dialog elements and both show methods are called, in the html structure, the subsequent dialog will always cover the previous upper layer (regardless of which dialog calls the show method first).

8: There will be a mask layer behind the display of showModal. The display level is at the browser webview level. How to understand it? You can set an element with a very high level. After using showModal to display the dialog attribute , dialog are all at the front, which is particularly suitable for modal boxes. There will definitely be no hierarchical confusion after the pop-up box appears.

9: showModal can only be called once. The one time here means that if the dialog is in the display state, then an error will be reported when showModal is called again, and it cannot be executed directly, or as long as the open attribute exists. If you call it again, an error will be reported, so it is better to use the default open attribute to show and hide the dialog.

10: If there are two dialog elements on the page and both are calling the showModal method, regardless of their structure in HTML, the level of the dialog called later will be higher than the level of the dialog called previously.

11: The value of dialog.returnVlaue is the value passed in when calling dialog.close(string). It only supports strings. Only when the dialog is displayed, the value passed in by calling dialog.close value is valid.

12: If no value has been passed in close, the value of returnVlaue will be empty. If the value dialog.close("1") is passed once, dialog.close() will close after the next show. , returnVlaue is still equal to "1".

13: The return value of open is: true/false.

4. Supported default events

Another advantage of dialog is that in addition to basic events such as click, it supports two additional special events for dialog. Event:

var dialog = document.getElementById("dialog");
// 假设页面中,有一个id=dialog的dialog标签

// 当调用close方法时
dialog.onclose = function(){};

// 当在pc端按下esc按键时。不过在chrome版本之后,好像不管用了。
dialog.oncancel = function(){};
Copy after login

Now let’s look at an example: dialog event example display.

There are also several problems, let’s list them here:

1: Only by calling dialog.close() to hide the dialog can the onclose event be triggered.

2: After the cancel event is triggered, the close event will definitely continue to be triggered. After the chrome64 version, cancel is not triggered by the esc key.

3: If there are multiple buttons to close the dialog, then pass in a different value each time close is called. In the callback of the close event, use the value of returnVlaue to determine which button it is. The shutdown event used to trigger.

5. Others

Some of the performances of the dialog have been explained earlier. They may be incomplete or inaccurate, or they may be updated as time goes by. Features appear, welcome to add.

When looking at the previous example, we also saw some shortcomings, such as: the style is particularly ugly. Regarding this, we can completely use CSS to reset the style without affecting the semantics and any other Things, just rest assured to refactor.

I just want to talk about the performance of dialog, so I won’t do that.

6. Summary

dialog is, after all, a semantic label for pop-up dialogs, and has some unique advantages (such as the height of the webview level), although it is only Chrome supports it, but it is still very promising for future use. Even now, you can make it compatible by yourself. In other browsers, you can implement a set of dialog mechanisms by yourself (maybe there is already an implementation plan for this, so I won’t go into it here. found).

The above is the entire content of this article. I hope it will be helpful to everyone's study. For more related content, please pay attention to the PHP Chinese website!

Related recommendations:

About the implementation of html5 calling camera function

Introduction to html5 calling app sharing function

The above is the detailed content of Introduction to html5.2 dialog. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to run the h5 project How to run the h5 project Apr 06, 2025 pm 12:21 PM

Running the H5 project requires the following steps: installing necessary tools such as web server, Node.js, development tools, etc. Build a development environment, create project folders, initialize projects, and write code. Start the development server and run the command using the command line. Preview the project in your browser and enter the development server URL. Publish projects, optimize code, deploy projects, and set up web server configuration.

What exactly does H5 page production mean? What exactly does H5 page production mean? Apr 06, 2025 am 07:18 AM

H5 page production refers to the creation of cross-platform compatible web pages using technologies such as HTML5, CSS3 and JavaScript. Its core lies in the browser's parsing code, rendering structure, style and interactive functions. Common technologies include animation effects, responsive design, and data interaction. To avoid errors, developers should be debugged; performance optimization and best practices include image format optimization, request reduction and code specifications, etc. to improve loading speed and code quality.

How to make h5 click icon How to make h5 click icon Apr 06, 2025 pm 12:15 PM

The steps to create an H5 click icon include: preparing a square source image in the image editing software. Add interactivity in the H5 editor and set the click event. Create a hotspot that covers the entire icon. Set the action of click events, such as jumping to the page or triggering animation. Export H5 documents as HTML, CSS, and JavaScript files. Deploy the exported files to a website or other platform.

What Does H5 Refer To? Exploring the Context What Does H5 Refer To? Exploring the Context Apr 12, 2025 am 12:03 AM

H5referstoHTML5,apivotaltechnologyinwebdevelopment.1)HTML5introducesnewelementsandAPIsforrich,dynamicwebapplications.2)Itsupportsmultimediawithoutplugins,enhancinguserexperienceacrossdevices.3)SemanticelementsimprovecontentstructureandSEO.4)H5'srespo

What is the H5 programming language? What is the H5 programming language? Apr 03, 2025 am 12:16 AM

H5 is not a standalone programming language, but a collection of HTML5, CSS3 and JavaScript for building modern web applications. 1. HTML5 defines the web page structure and content, and provides new tags and APIs. 2. CSS3 controls style and layout, and introduces new features such as animation. 3. JavaScript implements dynamic interaction and enhances functions through DOM operations and asynchronous requests.

What application scenarios are suitable for H5 page production What application scenarios are suitable for H5 page production Apr 05, 2025 pm 11:36 PM

H5 (HTML5) is suitable for lightweight applications, such as marketing campaign pages, product display pages and corporate promotion micro-websites. Its advantages lie in cross-platformity and rich interactivity, but its limitations lie in complex interactions and animations, local resource access and offline capabilities.

How to make pop-up windows with h5 How to make pop-up windows with h5 Apr 06, 2025 pm 12:12 PM

H5 pop-up window creation steps: 1. Determine the triggering method (click, time, exit, scroll); 2. Design content (title, text, action button); 3. Set style (size, color, font, background); 4. Implement code (HTML, CSS, JavaScript); 5. Test and deployment.

Is H5 page production a front-end development? Is H5 page production a front-end development? Apr 05, 2025 pm 11:42 PM

Yes, H5 page production is an important implementation method for front-end development, involving core technologies such as HTML, CSS and JavaScript. Developers build dynamic and powerful H5 pages by cleverly combining these technologies, such as using the &lt;canvas&gt; tag to draw graphics or using JavaScript to control interaction behavior.

See all articles