弹出框适应窗口大小(1)

Bootstrap 5 弹出框 Bootstrap 5 弹出框是一个模态窗口,用于在网页上显示内容,同时遮罩背景。弹出框可以包含文本、表单、图片等元素,常用于显示警告信息、确认操作、登录表单等场景。响应式设计:弹出框会根据屏幕大小自动调整尺寸。易于定制:可以通过 CSS 类或 JavaScript API 自定义弹出框的样式和行为。丰富的交互:支持键盘导航、动画效果等交互特性。 阅读详情

为了实现以下效果:

(实现弹出框根据窗口的大小定位top,left,注意只是首次获取窗口的小大,并没有处理根据窗口大小变化触发的事件)


向右适应:


向下适应:


可谓是调了N久,主要获取高度这一块,网上描述的很多js函数不适应,最后用的$(document).height();获取的网页的高度,其他貌似都不可以。


直到找到这个网页:

点击跳转到这个牛B的网址

内容我已经复制过来:

document.body.clientWidth ==> BODY对象宽度  
document.body.clientHeight ==> BODY对象高度  
document.documentElement.clientWidth ==> 可见区域宽度  
document.documentElement.clientHeight ==> 可见区域高度  
  
网页可见区域宽: document.body.clientWidth  
网页可见区域高: document.body.clientHeight  
网页可见区域宽: document.body.offsetWidth (包括边线的宽)  
网页可见区域高: document.body.offsetHeight (包括边线的高)  
网页正文全文宽: document.body.scrollWidth  
网页正文全文高: document.body.scrollHeight  
网页被卷去的高: document.body.scrollTop  
网页被卷去的左: document.body.scrollLeft  
网页正文部分上: window.screenTop  
网页正文部分左: window.screenLeft  
屏幕分辨率的高: window.screen.height  
屏幕分辨率的宽: window.screen.width  
屏幕可用工作区高度: window.screen.availHeight  
屏幕可用工作区宽度: window.screen.availWidth  
  


// 部分jQuery函数  
$(window).height()  //浏览器时下窗口可视区域高度   
$(document).height()    //浏览器时下窗口文档的高度   
$(document.body).height()      //浏览器时下窗口文档body的高度   
$(document.body).outerHeight(true) //浏览器时下窗口文档body的总高度 包括border padding margin   
$(window).width()  //浏览器时下窗口可视区域宽度   
$(document).width()//浏览器时下窗口文档对于象宽度   
$(document.body).width()      //浏览器时下窗口文档body的高度   
$(document.body).outerWidth(true) //浏览器时下窗口文档body的总宽度 包括border padding


  
HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth   
scrollHeight: 获取对象的滚动高度。   
scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离   
scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离   
scrollWidth:获取对象的滚动宽度   
offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度   
offsetLeft:获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置   
offsetTop:获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置   
event.clientX 相对文档的水平座标   
event.clientY 相对文档的垂直座标   
event.offsetX 相对容器的水平坐标   
event.offsetY 相对容器的垂直坐标   
document.documentElement.scrollTop 垂直方向滚动的值   
event.clientX+document.documentElement.scrollTop 相对文档的水平座标+垂直方向滚动的量 

最重要的是这张图:让我理清了这些关系:




一个很好的测试上面各个属性以及鼠标位置的例子:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title>JS获得鼠标位置(兼容多浏览器ie,firefox)脚本之家修正版</title>
</head>

<script src="jquery-1.11.1.js"></script>
<script>
	function mouseMove(ev) {
		ev = ev || window.event;
		var mousePos = mouseCoords(ev);
		//alert(ev.pageX);
		document.getElementById("xxx").value = mousePos.x;
		document.getElementById("yyy").value = mousePos.y;
		

		 var ele1 = document.body.clientWidth  ;
		 var ele2 = document.body.clientHeight ;
		 var ele3 = document.body.offsetWidth  ;
		 var ele4 = document.body.offsetHeight ;
		 var ele5 = document.body.scrollWidth  ;
		 var ele6 = document.body.scrollHeight ;
		 var ele7 = document.body.scrollTop    ;
		 var ele8 = document.body.scrollLeft   ;
		 var ele9 = window.screenTop           ;
		 var ele10 = window.screenLeft         ;
		 var ele11 = window.screen.height      ;
		 var ele12 = window.screen.width       ;
		 var ele13 = window.screen.availHeight ;
		 var ele14 = window.screen.availWidth  ;
		 
		document.getElementById("ele1").value = ele1;
		document.getElementById("ele2").value = ele2;
		document.getElementById("ele3").value = ele3;
		document.getElementById("ele4").value = ele4;
		document.getElementById("ele5").value = ele5;
		document.getElementById("ele6").value = ele6;
		document.getElementById("ele7").value = ele7;
		document.getElementById("ele8").value = ele8;
		document.getElementById("ele9").value = ele9;
		document.getElementById("ele10").value = ele10;
		document.getElementById("ele11").value = ele11;
		document.getElementById("ele12").value = ele12;
		document.getElementById("ele13").value = ele13;
		document.getElementById("ele14").value = ele14;
		
		
		var test = $(window).height();
		//var test = document.body.clientHeight;
		document.getElementById("test").value = test;
		
	}

	function mouseCoords(ev) {
		
		if (ev.pageX || ev.pageY) {
			return {
				x : ev.pageX,
				y : ev.pageY
			};
		}
		return {
			x : ev.clientX + document.body.scrollLeft - document.body.clientLeft,
			y : ev.clientY + document.body.scrollTop - document.body.clientTop
		};
	}


	document.onmousemove = mouseMove; 
</script>


<body>
	鼠标 X 轴:
	<input id="xxx" type="text">
	鼠标 Y 轴:
	<input id="yyy" type="text">
	<br>
	<br>
	
	网页可见区域宽:      <input id="ele1" type="text"><br/>
	网页可见区域高:      <input id="ele2" type="text"><br/>
	网页可见区域宽(包括边线的宽):      <input id="ele3" type="text"><br/>
	网页可见区域高(包括边线的高):      <input id="ele4" type="text"><br/>
	网页正文全文宽:      <input id="ele5" type="text"><br/>
	网页正文全文高:      <input id="ele6" type="text"><br/>
	网页被卷去的高:      <input id="ele7" type="text"><br/>
	网页被卷去的左:      <input id="ele8" type="text"><br/>
	网页正文部分上:      <input id="ele9" type="text"><br/>
	网页正文部分左:      <input id="ele10" type="text"><br/>
	屏幕分辨率的高:      <input id="ele11" type="text"><br/>
	屏幕分辨率的宽:      <input id="ele12" type="text"><br/>
	屏幕可用工作区高度:    <input id="ele13" type="text"><br/>
	屏幕可用工作区宽度:    <input id="ele14" type="text"><br/>
	
	<br/><br/>
	测试:  <input id="test" type="text"><br/>
</body>

图太多,下一篇上图中效果代码!!!

FLEX弹出框特效全解析与实现指南 弹出框作为一种交互元素,其设计和应用需要精心考量用户体验的各个方面。通过上述原则和因素的分析,设计师可以更加有效地利用弹出框提升用户界面的交互性和直观性。本章介绍了弹出框设计的基础,接下来的章节将结合Flexbox布局技术,探讨如何实现具有吸引力和交互性的弹出框特效。通过深入解析Flexbox的各个属性,我们可以看到它不仅仅是一种简单的布局工具,更是一种灵活的设计思维。掌握这些特性将大大提高布局设计的效率和质量。随着Web开发的发展,Flexbox必将成为前端工程师不可或缺的一项技能。 阅读详情

相关推荐

Asp.Net alert弹出提示信息的几种方法总结

本篇文章主要是对Asp.Net alert弹出提示信息的几种方法进行了总结介绍,需要的朋友可以过来参考下,希望对大家有所帮助

更改AlertDialog窗口大小的方法

AlertDialog dialog = new AlertDialog.Builder(this).create(); dialog.show(); WindowManager.LayoutParams params = dialog.getWindow().getAttributes(); params.width = 200; params.height = 200 ; dialog.get

面朝大海,春暖花开 1558

告别黑盒:深入解析西部数据UFS芯片的44个SMART健康参数(附高通XBL读取源码)

本文深入解析西部数据UFS芯片的44个SMART健康参数,结合高通XBL启动加载层源码,提供了一套完整的健康状态诊断方法论。从SCSI命令层封装到数据结构映射,详细介绍了如何在高通平台早期启动阶段捕获UFS健康状态,帮助工程师实现预测性维护。

weixin_30600197的博客 427

C#中如何调整easyui中控件方法$.messager.alert弹窗窗口和字体的大小

但是我这边这样设置后显示就乱码了,不知道是不是版本太老的原因,后面结合这个我这样改的。这是easyui 默认的一个效果,然后 我在网上搜调整大小,搜到的代码是这样的。

.NET开发工程师吃瓜日常的日常 1435

Oracle EBS MRP 模块测试记录

MRP 模块测试记录        构思:创建Shirt成品物料,它由Cloth和Button组成。1*Shirt=1*Cloth+8*Button。        首先创建这三个物料(复制模板创建),并分配给T02。        创建BOM,将这三个物料关联起来。        分别创建资源(人工和设备)制造Cloth和Button。        分别创建两个部门(HumanDep和Mach

NetSuite 张老师 8165

DSSAT模型实战:从基础配置到气候情景模拟

本文详细介绍了DSSAT模型在农业模拟中的应用,从基础配置到气候情景模拟的全流程实战指南。通过土壤-植物-大气连续体的动态关系建模,DSSAT能精准预测作物产量,误差率低至8%。文章涵盖气象数据处理、土壤参数配置、管理措施调控等核心技巧,并提供了Python脚本和可视化方法,助力农业科研与决策。

weixin_29264201的博客 1013

html中alert的用法_js的三种弹出框(alert、confirm、prompt)简单介绍

1、alert()alert是HTML DOM 中用到的一种脚本语言,它的中文意思是"提醒"。它是JavaScript或VBscript脚本语言中窗口window对象的一个常用方法;其主要用法就是在你自己定义了一定的函数以后,通过执行相应的操作,所弹出对话框的语言。并且alert对话框通常用于一些对用户的提示信息。  alert 方法有一个参数,就是用户想弹出的内容,弹出框很简单,就一个...

weixin_39612554的博客 3万+

WSL2 Ubuntu复现FoundationPose项目(docker)

复现一个基于深度学习的物体姿态估计框架FoundationPose项目,使用docker,WSL2

woaidawangwang的博客 2000

如何修改AlertDialog弹出界面的大小

修改AlertDialog的宽高无效

An_light的博客 2098

仿真学习系列(四十二):Sigrity仿真之走线阻抗和耦合检查

在高速电路设计中,走线的阻抗和信号线之间的耦合是影响信号完整性的重要因素。设计中可能会出现多种情况,导致阻抗变化或不匹配,例如线宽的变化、跨层分割等。传统的人工检查方法常常不够高效且易忽视细节。借助仿真软件,可以快速定位问题区域,并进行精确分析,从而有效避免或减少信号反射和串扰带来的影响。

案例文章,高速信号 425

手把手教你学Simulink——基于Simulink的输入输出线性化精确转矩控制

由于IOFL控制律中实时引入了当前状态的反馈(id​,iq​,ωe​),电感的变化被非线性项自动补偿,转矩仅出现微小幅度的波动(< 2%),展现出极强的参数鲁棒性。:电压方程中的耦合项(ωe​Lq​iq​和 −ωe​Ld​id​)仅通过前馈补偿,当转速 ωe​较高时,微小的前馈误差会导致显著的d-q轴电流交叉耦合;其中,ud​,uq​为定子电压,id​,iq​为定子电流,Rs​为定子电阻,Ls​为定子电感,ωe​为电角速度,ψf​为永磁体磁链,p为极对数。(步长 Ts​=10μs,即100ns?

MHD0815的博客 85

pyqt右下角弹窗_python+pyqt实现右下角弹出框

本文实例为大家分享了pyqt实现右下角弹出框的具体代码,供大家参考,具体内容如下构造函数中:self.desktop=QDesktopWidget()self.move((self.desktop.availableGeometry().width()-self.width()),self.desktop.availableGeometry().height()) #初始化位置到右下角self.s...

weixin_33275503的博客 455

Android PMS——概述(一)

PMS(Package Manager Service)是 Android 操作系统的一个重要组件,它负责管理应用程序的包信息以及与应用程序的安装、卸载、权限控制等相关功能,确保应用程序的安全性和稳定性。 Android PMS 负责维护一个应用程序包的清单信息,该清单是一个 XML 文件,包含应用程序的各种元数据,例如应用程序的包名、版本号、权限要求、组件信息等。PMS通过访问该清单文件来获取应用程序的信息。 此外,Android PMS 还负责应用程序的安装和卸载。在安装应用

小旭的专栏 1667

Bootstrap的大小模态弹出框

一 代码 &lt;!DOCTYPE HTML&gt; &lt;html&gt; &lt;head&gt; &lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8"&gt; &lt;title&gt;模态弹出框--实现原理解析(二)&lt;/title&gt; &am

实践求真知 1803

代谢组数据分析(五):代谢组的功能富集分析

本文介绍了代谢组数据分析中的功能分析,包括代谢物富集分析、GSEA和ssGSEA方法。文章详细阐述了分析原理、应用背景、数据准备、统计方法以及结果解释,强调了在代谢通路和代谢物ID对应关系建立、差异代谢物筛选、富集程度计算等方面的关键步骤。通过这些方法,可以揭示差异代谢物在生物过程中的作用,为疾病研究和药物开发提供依据。

专注生信领域 5981

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

改变FragmentDialog弹出框大小

改变FragmentDialog弹出框大小

DavidVCode的博客 3847

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

jQuery Mobile 1.2 弹出框(Popups)预览(

jQuery Mobile 1.2 弹出框(Popups)预览(1)  作者:eddy 日期:2012-07-21 字体大小: 小 中 大   在待发布的1.2版本中正如在官方博客中提到的增加了弹出框部件(Popups),这个部件和对话框(Dialog)部件的不同之处就是在当前页面来创建一个真正的弹出层来展示不同形态的信息,而不是通过跳转到一个新的页面来模拟弹出窗口

Webapp html5 4254

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

弹出框层级管理

ArkUI的弹出框节点都是直接挂载在根节点上,会根据层级从小到大依次挂载。根节点下,右边的弹出框节点会覆盖显示在左边的弹出框节点上,新创建的弹出框节点会根据层级大小插入到对应的位置,同一层级大小的弹窗节点按照创建的先后顺序进行挂载。

2302_77228054的博客 560

弹出框适应窗口大小(2)

实现弹出框根据窗口的大小定位top,left,注意只是首次获取窗口的小大,并没有处理根据窗口大小变化触发的事件

nano-dhh 908

html弹出提示框位置,基于jquery的弹出提示框始终处于窗口的居中位置(类似于alert弹出框的效果)...

原理很简单:获取当前屏幕(窗体)的宽度和高度,因为不同浏览器的窗体大小是不一样的。有了这个,可以计算出来垂直居中的坐标。但是滑动了滚动条怎么依然垂直居中呢?这个时候就要获取当前窗体距离页面顶部的高度,加到刚刚的y轴坐标即可。$(document)是获取整个网页的,$(window)是获取当前窗体的,这个要搞清楚。最后把获取的坐标赋给窗体即可,窗体本身是绝对定位的,所以自然可以到窗体中间。具体代码:...

weixin_29543187的博客 718

自适应弹出框-垂直居中

自适应弹出框 .box-mask { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: #000; opacity: 0.5; filter: alpha(opacity=50); z-index: 99; display: none; } .box { position: ab

liyuedan的专栏 1万+

SpringBoot+JavaFx实现弹出框效果

老规矩,先看效果图 点击新建时,创建一个弹出框。 实现过程 1、给新建按钮添加鼠标点击事件(onMouseClicked) <AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1308.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="htt

j10000001的博客 3265

在弹出创苦时,根据窗口的内容来自动调节窗口的大小,窗口如果已经和屏幕相等大小时则出现滚动条

解决方案:在弹出的页面中添加一JS脚本方法win_onLoad(),在body的onload方法中引用win_onLoad(),在body中添加表,表的id取名为tbllist,窗口的大小就是这个table的大小在宽和高上分别加50。部分代码如下: function win_onLoad(){ var width = document.all["tblKsList"].offsetWidth; v

◤智猪博弈◢的专栏 1177

html修改弹出框的大小,点击一个超链接,弹出固定大小的新窗口(js实现)

1、最基本的弹出窗口代码[javascript] view plaincopy因为这是一段javascripts代码,所以它们应该放在参数解释:js脚本结束3、用函数控制弹出窗口下面是一个完整的代码:[html] view plaincopy为避免弹出的2个窗口覆盖,用top和left控制一下弹出的位置不要相互覆盖即可。最后用上面说过的四种方法调用即可。注意:2个窗口的name(newwin...

weixin_30070663的博客 2959

jquery dialog-优雅的弹出框

前面一章已经对datepicker的使用,做了简单的说明。这一章主要对dialog如何使用做个说明。 jquery ui-dialog在web开发中运用还是比较多的。最常见的例子就是登录功能的实现。运用dialog的好处就是不用刷新网页,直接弹出一个div层,让用户输入信息。使用起来也比较方便。下面就学学如何使用它吧。 前提条件 ...

aichuxia4449的博客 1941
上一篇: JQuery实现“还能输入多少个字”
下一篇: 弹出框适应窗口大小(2)
wive
博客等级 码龄14年 33粉丝 119原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值