下面是具体的js代码
1,首先定义几个自定义函数
代码
Home Web Front-end JS Tutorial A custom pop-up dialog code written in JavaScript_javascript skills

A custom pop-up dialog code written in JavaScript_javascript skills

May 16, 2016 pm 06:36 PM
javascript dialog box

The picture below is my design idea

The following is the specific js code
1. First define several custom functions
Code

Copy code The code is as follows:

//Determine whether it is an array
function isArray(v)
{
return v && typeof v.length == 'number' && typeof v.splice == 'function';
}
//Create element
function createEle(tagName)
{
return document.createElement (tagName);
}
//Add child elements in body
function appChild(eleName)
{
return document.body.appendChild(eleName);
}
//Remove child elements from body
function remChild(eleName)
{
return document.body.removeChild(eleName);
}

2, Specific form implementation code
Code
Copy code The code is as follows:

//Pop-up window, title (html form), html, width, height, whether it is a modal dialog box (true, false), button (the close button is the default, the format is ['button 1', fun1 , 'Button 2', fun2] array form, the front is the button value, and the back is the button onclick event)
function showWindow(title,html,width,height,modal,buttons)
{
//Avoid Window is too small
if (width < 300)
{
width = 300;
}
if (height < 200)
{
height = 200;
}
//Declare the width and height of the mask (that is, the width and height of the entire screen)
var w,h;
//Visible area width and height
var cw = document .body.clientWidth;
var ch = document.body.clientHeight;
//The width and height of the body
var sw = document.body.scrollWidth;
var sh = document.body.scrollHeight ;
//The distance between the top of the visible area and the top and left side of the body
var st = document.body.scrollTop;
var sl = document.body.scrollLeft;
w = cw > sw ? cw :sw;
h = ch > sh ? ch:sh;
//Avoid the window being too large
if (width > w)
{
width = w;
}
if (height > h)
{
height = h;
}
//If modal is true, that is, a modal dialog box, a transparent mask must be created membrane
if (modal)
{
var mask = createEle('div');
mask.style.cssText = "position:absolute;left:0;top:0px;background:# fff;filter:Alpha(Opacity=30);opacity:0.5;z-index:10000;width:" w "px;height:" h "px;";
appChild(mask);
}
//This is the main form
var win = createEle('div');
win.style.cssText = "position:absolute;left:" (sl cw/2 - width/2) " px;top:" (st ch/2 - height/2) "px;background:#f0f0f0;z-index:10001;width:" width "px;height:" height "px;border:solid 2px #afccfe; ";
//Title bar
var tBar = createEle('div');
//afccfe,dce8ff,2b2f79
tBar.style.cssText = "margin:0;width:" width "px;height:25px;background:url(top-bottom.png);cursor:move;";
//The text part in the title bar
var titleCon = createEle('div');
titleCon.style.cssText = "float:left;margin:3px;";
titleCon.innerHTML = title;//firefox does not support innerText, so innerHTML is used here
tBar.appendChild(titleCon);
//"Close button" in the title bar
var closeCon = createEle('div');
closeCon.style.cssText = "float:right;width:20px;margin:3px;cursor:pointer; ";//cursor:hand is not available in firefox
closeCon.innerHTML = "×";
tBar.appendChild(closeCon);
win.appendChild(tBar);
//Form In the content part, overflow in CSS causes a scroll bar to appear when the content size exceeds this range.
var htmlCon = createEle('div');
htmlCon.style.cssText = "text-align:center; width:" width "px;height:" (height - 50) "px;overflow:auto;";
htmlCon.innerHTML = html;
win.appendChild(htmlCon);
//Form Bottom button part
var btnCon = createEle('div');
btnCon.style.cssText = "width:" width "px;height:25px;text-height:20px;background:url(top- bottom.png);text-align:center;padding-top:3px;";
//If the parameter buttons is an array, a custom button will be created
if (isArray(buttons))
{
var length = buttons.length;
if (length > 0)
{
if (length % 2 == 0)
{
for (var i = 0 ; i < length; i = i 2)
{
//Button array
var btn = createEle('button');
btn.innerHTML = buttons[i];//firefox The value attribute is not supported, so innerHTML is used here
// btn.value = buttons[i];
btn.onclick = buttons[i 1];
btnCon.appendChild(btn);
/ /User fills the space between buttons
var nbsp = createEle('label');
nbsp.innerHTML = "  ";
btnCon.appendChild(nbsp);
}
}
}
}
//This is the default close button
var btn = createEle('button');
// btn.setAttribute("value","close");
btn.innerHTML = 'Close';
// btn.value = 'Close';
btnCon.appendChild(btn);
win.appendChild(btnCon);
appChild(win );
/*************************************The following is the drag form event******** *************/
//X coordinate of the mouse stay
var mouseX = 0;
//Y coordinate of the mouse stay
var mouseY = 0;
//The distance from the form to the top of the body
var toTop = 0;
//The distance from the form to the left side of the body
var toLeft = 0;
//Determine whether the form can be moved
var moveable = false;
//Mouse down event of the title bar
tBar.onmousedown = function()
{
var eve = getEvent();
moveable = true ;
mouseX = eve.clientX;
mouseY = eve.clientY;
toTop = parseInt(win.style.top);
toLeft = parseInt(win.style.left);
//Move mouse event
tBar.onmousemove = function()
{
if(moveable)
{
var eve = getEvent();
var x = toLeft eve.clientX - mouseX;
var y = toTop eve.clientY - mouseY;
if (x > 0 && (x width < w) && y > 0 && (y height < h))
{
win.style.left = x "px";
win.style.top = y "px";
}
}
}
//Put down the mouse event, note that this is document instead of tBar
document.onmouseup = function()
{
moveable = false;
}
}
// Method to get browser events, compatible with IE and Firefox
function getEvent()
{
return window.event || arguments.callee.caller.arguments[0];
}
/ /Close event of the "Close Button" in the top title bar and bottom button bar
btn.onclick = closeCon.onclick = function()
{
remChild(win);
remChild( mask);
}
}

Instance call
Copy code The code is as follows :

str = "Look at the effect of my form";
showWindow('My prompt box',str,850,250,true,['region',fun1,'mineral type ',fun2]);

More complete and practical code, including definition and calling
code
Copy code The code is as follows:


Custom pop-up dialog box












此脚本在ie,firefox浏览器下运行通过。。。。
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

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

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 implement an online speech recognition system using WebSocket and JavaScript How to implement an online speech recognition system using WebSocket and JavaScript Dec 17, 2023 pm 02:54 PM

How to use WebSocket and JavaScript to implement an online speech recognition system Introduction: With the continuous development of technology, speech recognition technology has become an important part of the field of artificial intelligence. The online speech recognition system based on WebSocket and JavaScript has the characteristics of low latency, real-time and cross-platform, and has become a widely used solution. This article will introduce how to use WebSocket and JavaScript to implement an online speech recognition system.

WebSocket and JavaScript: key technologies for implementing real-time monitoring systems WebSocket and JavaScript: key technologies for implementing real-time monitoring systems Dec 17, 2023 pm 05:30 PM

WebSocket and JavaScript: Key technologies for realizing real-time monitoring systems Introduction: With the rapid development of Internet technology, real-time monitoring systems have been widely used in various fields. One of the key technologies to achieve real-time monitoring is the combination of WebSocket and JavaScript. This article will introduce the application of WebSocket and JavaScript in real-time monitoring systems, give code examples, and explain their implementation principles in detail. 1. WebSocket technology

How to use JavaScript and WebSocket to implement a real-time online ordering system How to use JavaScript and WebSocket to implement a real-time online ordering system Dec 17, 2023 pm 12:09 PM

Introduction to how to use JavaScript and WebSocket to implement a real-time online ordering system: With the popularity of the Internet and the advancement of technology, more and more restaurants have begun to provide online ordering services. In order to implement a real-time online ordering system, we can use JavaScript and WebSocket technology. WebSocket is a full-duplex communication protocol based on the TCP protocol, which can realize real-time two-way communication between the client and the server. In the real-time online ordering system, when the user selects dishes and places an order

How to implement an online reservation system using WebSocket and JavaScript How to implement an online reservation system using WebSocket and JavaScript Dec 17, 2023 am 09:39 AM

How to use WebSocket and JavaScript to implement an online reservation system. In today's digital era, more and more businesses and services need to provide online reservation functions. It is crucial to implement an efficient and real-time online reservation system. This article will introduce how to use WebSocket and JavaScript to implement an online reservation system, and provide specific code examples. 1. What is WebSocket? WebSocket is a full-duplex method on a single TCP connection.

JavaScript and WebSocket: Building an efficient real-time weather forecasting system JavaScript and WebSocket: Building an efficient real-time weather forecasting system Dec 17, 2023 pm 05:13 PM

JavaScript and WebSocket: Building an efficient real-time weather forecast system Introduction: Today, the accuracy of weather forecasts is of great significance to daily life and decision-making. As technology develops, we can provide more accurate and reliable weather forecasts by obtaining weather data in real time. In this article, we will learn how to use JavaScript and WebSocket technology to build an efficient real-time weather forecast system. This article will demonstrate the implementation process through specific code examples. We

How to use insertBefore in javascript How to use insertBefore in javascript Nov 24, 2023 am 11:56 AM

Usage: In JavaScript, the insertBefore() method is used to insert a new node in the DOM tree. This method requires two parameters: the new node to be inserted and the reference node (that is, the node where the new node will be inserted).

Simple JavaScript Tutorial: How to Get HTTP Status Code Simple JavaScript Tutorial: How to Get HTTP Status Code Jan 05, 2024 pm 06:08 PM

JavaScript tutorial: How to get HTTP status code, specific code examples are required. Preface: In web development, data interaction with the server is often involved. When communicating with the server, we often need to obtain the returned HTTP status code to determine whether the operation is successful, and perform corresponding processing based on different status codes. This article will teach you how to use JavaScript to obtain HTTP status codes and provide some practical code examples. Using XMLHttpRequest

How to get HTTP status code in JavaScript the easy way How to get HTTP status code in JavaScript the easy way Jan 05, 2024 pm 01:37 PM

Introduction to the method of obtaining HTTP status code in JavaScript: In front-end development, we often need to deal with the interaction with the back-end interface, and HTTP status code is a very important part of it. Understanding and obtaining HTTP status codes helps us better handle the data returned by the interface. This article will introduce how to use JavaScript to obtain HTTP status codes and provide specific code examples. 1. What is HTTP status code? HTTP status code means that when the browser initiates a request to the server, the service

See all articles