Maison interface Web js tutoriel Exemple complet de fenêtre flottante pouvant être zoomée, glissée, fermée et réduite avec les compétences JS_javascript

Exemple complet de fenêtre flottante pouvant être zoomée, glissée, fermée et réduite avec les compétences JS_javascript

May 16, 2016 pm 04:11 PM
js 关闭 拖动 minimiser 缩放

L'exemple de cet article décrit la méthode JS d'implémentation d'une fenêtre flottante qui peut être zoomée, déplacée, fermée et réduite. Partagez-le avec tout le monde pour votre référence. La méthode de mise en œuvre spécifique est la suivante :

Copier le code Le code est le suivant :








var zindex=0  //全局变量
function dragClass (nom, titre, contenu, gauche, haut, largeur, hauteur) {
var isMouseDown=false;
var maximum=false;
var offX=0;   //设置抓取点X坐标
var offY=0;   //设置抓取点Y坐标
var vieuxGauche;  //保存正常状态的X坐标
var vieuxTop;   //保存正常状态的Y坐标
this.mousedown= function (){    //按下拖动点
     Bar.setCapture(); //设置抓取
     offX=parseInt(event.clientX)-parseInt(Window.style.left);
     offY=parseInt(event.clientY)-parseInt(Window.style.top);
     isMouseDown=true;
 si(Fenêtre.style.zIndex<=zindex){
  zindex ;
  Window.style.zIndex=zindex;
 >
>
this.mousemove= function (){    //拖动窗口
     if (isMouseDown && !maximum){
  Bar.style.cursor='déplacer'
  Window.style.left=event.clientX-offX;
  Window.style.top=event.clientY-offY;
  if(Window.style.zIndex<=zindex){
   zindex ;
   Window.style.zIndex=zindex;
  >
     >
>
this.mouseup=function (){     //松开按钮
     Bar.releaseCapture();     //取消抓取
     Bar.style.cursor='main';
     if (parseInt(Window.style.top)<0){
     Window.style.top='0px';
     >
     if (parseInt(Window.style.left)<0){
     Window.style.left='0px';
     >
     isMouseDown=false;
>
this.dblclick=function (){    //双击最大最小化
     si (!maximum){
    oldLeft=Fenêtre.style.left;   //保存正常状态的X坐标
    oldTop=Fenêtre.style.top;    //保存正常状态的Y坐标
    Window.style.left='0px';
    Window.style.top='0px';
    Window.style.width= document.body.clientWidth;    //网页可见区域宽
    Title.style.width=(document.body.clientWidth-40) 'px';  //设置标题长度
    ReSize.style.display='none';
    if(Change.innerText=='-'){
      Window.style.height='100%';
      Content.style.height=document.body.clientHeight-20; //网页可见区域宽-标题高度
    }autre{
      Window.style.height='20px';
    >
    maximum=vrai;
     }autre{
    Window.style.left=oldLeft;
    Window.style.top=oldTop;
    Window.style.width=largeur 'px';
    Title.style.width=(width-40) 'px';
    ReSize.style.display='';
    if(Change.innerText=='-'){
      Window.style.height=hauteur 'px';
      Content.style.height=parseInt(height-20) 'px';
    }autre{
      Window.style.height='20px';
    >
    maximum=faux;
     >
 if(Window.style.zIndex<=zindex){
  zindex ;
  Window.style.zIndex=zindex;
 >
>
this.changeWindow=function (){   //收缩窗口
     event.cancelBubble=true;
  if(Change.innerText=='-'){
    Window.style.height='20px';
    Change.innerText='□';
    Content.style.display='none';
    ReSize.style.display='none';
     }autre{
    si (maximum){
      Window.style.height='100%';
      Content.style.display='';
      ReSize.style.display='';
      Content.style.height=document.body.clientHeight-20; //网页可见区域宽-标题高度
    }autre{
      Window.style.height=hauteur 'px';
      Content.style.display='';
      ReSize.style.display='';
      Content.style.height=parseInt(height-20) 'px';
    >
    Change.innerText='-';
     >
>

var Window=document.createElement("div");
Window.id="nom divWindow";
Window.className="divWindow";
Window.style.left=gauche 'px';
Window.style.top=haut 'px';
Window.style.width=largeur 'px';
Window.style.height=hauteur 'px';
Window.onclick=fonction(){
if(parseInt(Window.style.zIndex)<=zindex){
zindex ;
Window.style.zIndex=zindex;
>
>
this.Window=Fenêtre;
//Les attributs publics peuvent être exploités en dehors de la classe ; si vous souhaitez opérer en dehors de la classe, vous pouvez changer l'élément en attribut public

var Bar=document.createElement("div");
Bar.id="divBar" nom;
Bar.onselectstart="return false";
Bar.className="divBar";
Bar.onmousedown=this.mousedown;
Bar.ondblclick=this.dblclick;
Bar.onmousemove=this.mousemove;
Bar.onmouseup=this.mouseup;
Window.appendChild(Bar);
var Title=document.createElement("span");
Title.id="divTitle" nom ;
Title.className="divTitle";
Title.style.width=(width-40) 'px'; //Longueur du titre adaptative
Titre.innerText=titre;
Bar.appendChild(Titre);
var Change=document.createElement("span");
Change.id="divChange" nom;
Change.className="divChange";
Change.innerText="-";
Change.ondblclick=this.changeWindow;
Change.onclick=this.changeWindow;
Bar.appendChild(Changement);
var Close=document.createElement("span");
Close.id="divClose" nom;
Fermer.onclick=function(){
Window.style.display='none';
>
Fermer.className="divClose";
Fermer.innerText="×";
Bar.appendChild(Fermer);
var Content=document.createElement("div");
Content.id="divContent" nom;
Content.className="divContent"
Content.innerHTML=content;
Content.style.height=parseInt(height-20) 'px';
Window.appendChild(Contenu);

var ReSize=document.createElement("div");
ReSize.className="divReSize";
ReSize.onmousedown=function(){
if(Window.style.zIndex<=zindex){
zindex ;
Window.style.zIndex=zindex;
>
ReSize.setCapture();
isMouseDown=true;
>
ReSize.onmousemove=function(){
if (isMouseDown && !maximum)
{
width=parseInt(event.clientX)-parseInt(Window.style.left) 5;
height=parseInt(event.clientY)-parseInt(Window.style.top) 5;
If(width>100){ //Définir la largeur minimale
Window.style.width=largeur 'px';
Title.style.width=(width-40) 'px';
>
If(height>100){ //Définir la hauteur minimale
Window.style.height=hauteur 'px';
Content.style.height=parseInt(height-20) 'px';
>
>
>
ReSize.onmouseup=function(){
ReSize.releaseCapture();
isMouseDown=false;
>
Window.appendChild(ReSize);
var Iframe=document.createElement("iframe"); //Ajouter une iframe, bloquer le contrôle

J'espère que cet article sera utile à la conception de la programmation JavaScript de chacun.

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Problème de zoom Safari sur iPhone : voici la solution Problème de zoom Safari sur iPhone : voici la solution Apr 20, 2024 am 08:08 AM

Si vous n'avez pas de contrôle sur le niveau de zoom dans Safari, faire avancer les choses peut être délicat. Donc, si Safari semble zoomé, cela pourrait être un problème pour vous. Voici quelques façons de résoudre ce problème mineur de zoom dans Safari. 1. Grossissement du curseur : sélectionnez « Affichage » > « Grossissement du curseur » dans la barre de menu Safari. Cela rendra le curseur plus visible sur l'écran, ce qui facilitera son contrôle. 2. Déplacez la souris : Cela peut paraître simple, mais parfois, le simple fait de déplacer la souris vers un autre emplacement de l'écran peut automatiquement la ramener à sa taille normale. 3. Utilisez les raccourcis clavier Fix 1 – Réinitialiser le niveau de zoom Vous pouvez contrôler le niveau de zoom directement depuis le navigateur Safari. Étape 1 – Lorsque vous êtes dans Safari

Comment zoomer des pages côte à côte dans Word Comment zoomer des pages côte à côte dans Word Mar 19, 2024 pm 07:19 PM

Lorsque nous utilisons des documents Word pour éditer des fichiers, il y a parfois plusieurs pages. Nous voulons les afficher côte à côte et vérifier l'effet global. Cependant, comme nous ne savons pas comment fonctionner, nous devons souvent faire défiler pendant longtemps. pour visualiser page par page. Je ne sais pas si vous avez déjà rencontré une situation similaire. En fait, nous pouvons facilement la résoudre à ce stade, à condition d'apprendre à placer les pages de zoom côte à côte. Ci-dessous, jetons un coup d’œil et apprenons ensemble. Tout d’abord, nous créons et ouvrons une nouvelle page dans le document Word, puis entrons un contenu simple pour le distinguer plus facilement. 2. Par exemple, si nous voulons réaliser un zoom sur les mots et un affichage côte à côte, nous devons rechercher [Affichage] dans la barre de menu, puis sélectionner [Pages multiples] dans les options de l'outil d'affichage, comme indiqué dans la figure. ci-dessous : 3. Recherchez [Pages multiples] et cliquez sur,

Comment désactiver les publicités recommandées par 360 Browser ? Comment désactiver les publicités recommandées par 360 Browser sur PC ? Comment désactiver les publicités recommandées par 360 Browser ? Comment désactiver les publicités recommandées par 360 Browser sur PC ? Mar 14, 2024 am 09:16 AM

Comment désactiver les publicités recommandées par 360 Browser ? Je pense que de nombreux utilisateurs utilisent 360 Browser, mais ce navigateur affiche parfois des publicités, ce qui rend de nombreux utilisateurs très angoissés. Laissez ce site présenter soigneusement aux utilisateurs comment désactiver les publicités recommandées par 360 Browser sur votre ordinateur. Comment désactiver les publicités recommandées par 360 Browser sur votre ordinateur ? Méthode 1 : 1. Ouvrez le navigateur 360 Safe. 2. Recherchez le logo « trois barres horizontales » dans le coin supérieur droit et cliquez sur [Paramètres]. 3. Recherchez [Lab] dans la barre des tâches sur le côté gauche de l'interface contextuelle et cochez [Activer la fonction « 360 Hotspot Information »]. Méthode 2 : 1. Double-cliquez d’abord

Comment désactiver Sina News Express ? Comment désactiver la fonction express ? Comment désactiver Sina News Express ? Comment désactiver la fonction express ? Mar 12, 2024 pm 09:46 PM

Le logiciel Sina News fournit de nombreuses informations sur les titres d'actualité, qui sont essentiellement diffusées par la plate-forme officielle. Le contenu de chaque article d'actualité est authentique. Vous pouvez faire glisser votre doigt de haut en bas pour rechercher et parcourir en un seul clic, ce qui rend l'atmosphère de lecture globale plus confortable. . Entrez votre numéro de téléphone portable pour vous connecter en ligne. Les chaînes d'information dans différents champs sont ouvertes. Les mises à jour 24 heures sur 24 ne manquent pas. Les actualités nationales, étrangères et locales ne manquent pas. navigation. Le contenu des actualités est tout Si vous êtes intéressé, vous pouvez également désactiver la fonction News Express, afin qu'elle ne soit pas affectée. Vous pouvez l'ouvrir à tout moment et prévisualiser les gros titres d'actualités populaires. détails aux utilisateurs de Sina News en ligne. Étapes de fonctionnement de la fonction de livraison express. Recherchez Sina News et cliquez sur le coin inférieur droit

Explication détaillée sur la façon de désactiver le Centre de sécurité Windows 11 Explication détaillée sur la façon de désactiver le Centre de sécurité Windows 11 Mar 27, 2024 pm 03:27 PM

Dans le système d'exploitation Windows 11, le Centre de sécurité est une fonction importante qui aide les utilisateurs à surveiller l'état de sécurité du système, à se défendre contre les logiciels malveillants et à protéger la vie privée. Cependant, les utilisateurs peuvent parfois avoir besoin de désactiver temporairement Security Center, par exemple lors de l'installation de certains logiciels ou lors du réglage du système. Cet article présentera en détail comment désactiver le Centre de sécurité Windows 11 pour vous aider à utiliser le système correctement et en toute sécurité. 1. Comment désactiver le Centre de sécurité Windows 11 Sous Windows 11, la désactivation du Centre de sécurité ne

Recommandé : Excellent projet de détection et de reconnaissance des visages open source JS Recommandé : Excellent projet de détection et de reconnaissance des visages open source JS Apr 03, 2024 am 11:55 AM

La technologie de détection et de reconnaissance des visages est déjà une technologie relativement mature et largement utilisée. Actuellement, le langage d'application Internet le plus utilisé est JS. La mise en œuvre de la détection et de la reconnaissance faciale sur le front-end Web présente des avantages et des inconvénients par rapport à la reconnaissance faciale back-end. Les avantages incluent la réduction de l'interaction réseau et de la reconnaissance en temps réel, ce qui réduit considérablement le temps d'attente des utilisateurs et améliore l'expérience utilisateur. Les inconvénients sont les suivants : il est limité par la taille du modèle et la précision est également limitée ; Comment utiliser js pour implémenter la détection de visage sur le web ? Afin de mettre en œuvre la reconnaissance faciale sur le Web, vous devez être familier avec les langages et technologies de programmation associés, tels que JavaScript, HTML, CSS, WebRTC, etc. Dans le même temps, vous devez également maîtriser les technologies pertinentes de vision par ordinateur et d’intelligence artificielle. Il convient de noter qu'en raison de la conception du côté Web

Comment fermer le paiement sans mot de passe dans Kuaishou Tutoriel Kuaishou sur la façon de fermer le paiement sans mot de passe Comment fermer le paiement sans mot de passe dans Kuaishou Tutoriel Kuaishou sur la façon de fermer le paiement sans mot de passe Mar 23, 2024 pm 09:21 PM

Kuaishou est un excellent lecteur vidéo. La fonction de paiement sans mot de passe de Kuaishou est très familière à tout le monde. Elle peut nous être d'une grande aide dans la vie quotidienne, en particulier lors de l'achat des produits dont nous avons besoin sur la plateforme. . Maintenant, nous devons l'annuler. Comment pouvons-nous l'annuler efficacement ? La méthode d'annulation du paiement sans mot de passe est très simple. Les méthodes d'opération spécifiques ont été triées. ensemble. Jetons un coup d’œil à l’intégralité du guide sur ce site, j’espère qu’il pourra aider tout le monde. Tutoriel sur la façon de fermer le paiement sans mot de passe dans Kuaishou 1. Ouvrez l'application Kuaishou et cliquez sur les trois lignes horizontales dans le coin supérieur gauche. 2. Cliquez sur Boutique Kuaishou. 3. Dans la barre d'options ci-dessus, recherchez le paiement sans mot de passe et cliquez dessus. 4. Cliquez pour soutenir

Explication détaillée sur la façon de désactiver la protection en temps réel dans le Centre de sécurité Windows Explication détaillée sur la façon de désactiver la protection en temps réel dans le Centre de sécurité Windows Mar 27, 2024 pm 02:30 PM

En tant que l'un des systèmes d'exploitation comptant le plus grand nombre d'utilisateurs au monde, le système d'exploitation Windows a toujours été privilégié par les utilisateurs. Cependant, lorsqu'ils utilisent des systèmes Windows, les utilisateurs peuvent être confrontés à de nombreux risques de sécurité, tels que des attaques de virus, des logiciels malveillants et d'autres menaces. Afin de renforcer la sécurité du système, les systèmes Windows disposent de nombreux mécanismes de protection de sécurité intégrés, dont la fonction de protection en temps réel du Centre de sécurité Windows. Aujourd'hui, nous présenterons en détail comment désactiver la protection en temps réel dans le Centre de sécurité Windows. Tout d'abord, commençons

See all articles