JavaScript 动态网页实例 —— 窗口控制

        除了打开和关闭窗口之外,还有很多其他控制窗口的方法。例如,可以使用 window.focus()方法使窗口获得焦点,也可以利用与其相对的window.blur 方法使窗口失去焦点。本节介绍移动窗口、改变窗口大小、窗口滚动、窗口超时操作、常用窗口事件、常用窗口扩展等窗口控制的方法和手段。

窗口移动

本节给出一段窗口移动的示例代码,可以实现移动窗口在屏幕上位置的改变。位置改变时,既可以逐渐位移,也可一步到位。

要点

本节代码主要使用了 window.moveBy()方法和 window.moveTo()方法,二者的主要功能和用法如下。

  • window.moveBy()方法将窗口移动指定的像素数,其语法格式为“窗口名称.moveBy(水平像素数,垂直像素数)”。其中,“窗口名称”指要移动的窗口的名称。如果只有主窗口,则指该主窗口:“水平像素数”指在水平方向上移动窗口的像素数:如果为正数,则向右移动;如果是负数,则向左移动;“垂直像素数”指在垂直方向上移动窗口的像素数。如果为正数,则向上移动;如果是负数,则向下移动。
  • 如果想将窗口移动到一个确定的位置,更好的办法是使用 window.moveTo()方法。该方法会将窗口移动到屏幕上以平面坐标表示的固定位置。其语法格式为“窗口名称.moveTo(x坐标,y 坐标)”。其中,“窗口名称”指要移动的窗口的名称。如果只有主窗口,则指该主窗口;“x坐标”是要将窗口移动到的屏幕上x轴的坐标数;“y坐标”是要将窗口移动到的屏幕上y轴的坐标数。
<script type="text/javascript">
<!--
var myWindow;
function openIt() //函数:打开
{
//要打开的新窗口的特征
myWindow = open('','mywin','height=300,width=300,scrollbars=yes');
//新窗口页面HTML头部信息
myWindow.document.writeln("<html><head><title>新窗口</title></head>");
//新窗口页面HTML主体信息
myWindow.document.writeln("<body bgcolor='#ffcc00'>");
myWindow.document.writeln("<h1>这里是新窗口</h1><hr>");
myWindow.document.writeln("<h5>用递归求阶乘函数:</h5><pre>");
myWindow.document.writeln("function factorial(aNumber)<br>{");
myWindow.document.writeln("   // 如果这个数不是一个整数,则向下舍入。");
myWindow.document.writeln("   aNumber = Math.floor(aNumber);");
myWindow.document.writeln("   if (aNumber < 0)");
myWindow.document.writeln("   {  // 如果这个数小于 0,拒绝接收。");
myWindow.document.writeln("       return -1;<br>   }");
myWindow.document.writeln("   if (aNumber == 0)");
myWindow.document.writeln("   {  // 如果为 0,则其阶乘为 1。");
myWindow.document.writeln("      return 1;<br>   }");
myWindow.document.writeln("   else<br>      // 否则,递归直至完成。");
myWindow.document.writeln("      return (aNumber * factorial(aNumber - 1));");
myWindow.document.writeln("}</pre></body></html>");
myWindow.document.close();  //关闭输入
myWindow.focus();          //获取焦点
}

function moveIt()  //函数:移动
{
if ((window.myWindow) && (myWindow.closed == false))
myWindow.moveTo(document.testform.moveX.value,
document.testform.moveY.value);
}
//-->
</script>

e0cb995e20334d3cade66ae9672782bb.png

分析

(1)程序首先建立了两个文本框和若干按钮,文本框用于输入窗口要移动到的坐标值,按钮则关联相应的事件处理程序,用于对窗口进行移动。

(2)在<body>标签中添加了“οnlοad="openlt();"”属性,关联函数 openIt(),当窗口打开时,会调用该函数,打开一个新窗口。新窗口的内容是一段JavaScript 程序代码,由一系列的“myWindow.document.writeln( )”实现。

(3)“向上移”、“向下移”、“向左移”、“向右移”4个按钮的onclick 事件分别关联一个if语句,使用 window.moveBy()方法对窗口进行移动,每次移动的幅度为 10像素。

(4)“移动到”按钮的 onclick事件与函数 movelt()相关联。在函数 moveIt()中,如果新窗口已打开且未完毕,则使用用户输入的值作为参数,调用window.moveTo()方法对窗口进行移动。

改变大小

本节给出一段改变窗口大小的示例代码,可以实现对窗口大小进行调整。调整大小时既可以逐渐改变,也可一步到位。

要点

本节代码主要使用了 window.resizeBy()方法和 window.resizeTo()方法,二者的主要

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/667186.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

mac电脑鼠标键盘共享软件:ShareMouse for Mac 激活版

ShareMouse 是一款跨平台的键盘和鼠标共享软件&#xff0c;它允许用户在多台计算机之间共享同一组键盘和鼠标&#xff0c;实现无缝的操作和控制。该软件适用于 Windows 和 macOS 系统&#xff0c;并且支持多种连接方式&#xff0c;包括局域网连接和无线连接。 使用 ShareMouse&…

从openstack环境中将服务器镜像导出的简单办法

1 登录openstack的页面&#xff0c;找到计划导出的主机信息。 通过实例名称&#xff0c; IP地址&#xff0c;找到对应的记录。点击实例名称&#xff0c;进入详情页。 在这里主要可以知道&#xff0c;当前主机在服务器上的文件ID&#xff0c;可以按这个ID去找对应的目录。 还可…

java读取文件内容(正则表达式匹配)

已知文件score.txt内容如下&#xff1a; 语文85分&#xff0c;数学89分&#xff0c;英语75分&#xff0c;马列95分。 要求解析出其中的成绩数据&#xff0c;并计算总成绩 import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; import jav…

JDK环境配置、安装

DK环境配置&#xff08;备注&#xff1a;分32位与64位JDK&#xff0c;32位电脑只能按照32位JDK&#xff0c;64位电脑兼容32、64位JDK&#xff09; 一、检查自己电脑是否安装过JDK 1.在电脑屏幕左下角&#xff0c;输入命令提示符CMD&#xff0c;打开命令提示符应用 2.在打开界…

QT系列教程(7) QLineEdit介绍

简介 QLineEdit属于输入插件&#xff0c;用来实现单行录入。支持几种录入模式。 Normal表示正常录入,录入的信息会显示在QLineEdit上。 Password表示密码录入的方式&#xff0c;录入的信息不显示QLineEdit&#xff0c;只是通过黑色圆点显示。 NoEcho 表示不显示录入信息&am…

“开源与闭源:AI大模型发展的未来之路“

文章目录 每日一句正能量前言数据隐私开源大模型与数据隐私闭源大模型与数据隐私数据隐私保护的共同考虑结论 商业应用开源大模型的商业应用优势&#xff1a;开源大模型的商业应用劣势&#xff1a;闭源大模型的商业应用优势&#xff1a;闭源大模型的商业应用劣势&#xff1a;商…

ros DWA局部规划模块

ROS-DWA模块 主要流程DWAPlannerROS::computeVelocityCommandsDWAPlannerROS::dwaComputeVelocityCommandsDWAPlanner::findBestPathSimpleScoredSamplingPlanner::findBestTrajectory 调参技巧DWA被目标点过度吸引&#xff0c;且不听全局规划器指挥 消融实验goal_front_costs_…

Java 异步编编程——Java内置线程池(Executor 线程池)

文章目录 知道线程池是什么以及解决什么问题Java 内置线程池Java 内置线程池设计结构及执行机制ThreadPoolExecutor 中的概念生命周期核心参数阻塞队列4 种任务拒绝策略 线程池使用场景 知道线程池是什么以及解决什么问题 线程池&#xff08;Thread Pool&#xff09;是一种基于…

Kafka Java API

1、增加依赖 <dependency><groupId>org.apache.kafka</groupId><artifactId>kafka-clients</artifactId><version>1.0.0</version> </dependency>2、三个案例 案例1&#xff1a;生产数据 import org.apache.kafka.clients.p…

SpringBoot HelloWorld 之 实现注册功能

SpringBoot HelloWorld 之 实现注册功能 一.配置 创建数据库big_event CREATE TABLE user (id int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT ID,username varchar(20) COLLATE utf8_unicode_ci NOT NULL COMMENT 用户名,password varchar(32) COLLATE utf8_unicode_ci …

β-烟酰胺单核苷酸(NMN)功能不断得到验证 市场规模呈增长态势

β-烟酰胺单核苷酸&#xff08;NMN&#xff09;功能不断得到验证 市场规模呈增长态势 β-烟酰胺单核苷酸&#xff08;β-Nicotinamide mononucleotide&#xff0c;NMN&#xff09;是一种生物活性分子&#xff0c;是一种辅酶Ⅰ&#xff08;NAD&#xff09;的前体&#xff0c;也是…

WPF Binding对象

在WinForm中&#xff0c;我们要想对控件赋值&#xff0c;需要在后台代码中拿到控件对象进行操作&#xff0c;这种赋值形式&#xff0c;从根本上是无法实现界面与逻辑分离的。 在WPF中&#xff0c;微软引入了Binding对象&#xff0c;通过Binding&#xff0c;我们可以直接将控件与…

NTFS磁盘格式读写工具:Tuxera NTFS 2021 for Mac

Tuxera NTFS 是一款用于 macOS 系统的 NTFS 文件系统驱动程序。NTFS 是 Windows 系统中常用的文件系统&#xff0c;而 macOS 默认只支持读取 NTFS 格式的磁盘&#xff0c;不能进行写入操作。因此&#xff0c;如果你需要在 macOS 上进行 NTFS 磁盘的写入操作&#xff0c;就需要安…

php使用openssl返回false报错0308010C

本地php使用openssl返回false, 但是在服务器上测试正常openssl_encrypt($jsonStr, DES-ECB, $key, OPENSSL_RAW_DATA, ); 查看错误 openssl_error_string(); error:0308010C:digital envelope routines::unsupported 原因是: 服务器上的openssl是1.1版本, 本地是3.0版本 通…

真北5月小结|物事人心向上

1、跑步 今年的计划是每月跑15小时。五月实际跑了13小时17分。一到五月共跑了74小时43分&#xff0c;所以按平均每月15小时&#xff0c;还欠17分&#xff0c;六月补上。 另外两个跑步的标准是&#xff1a;保持跑步三天可见&#xff0c;最近龙舟雨&#xff0c;对这一条干扰很大&…

iframe内嵌网页自适应缩放 以展示源网页的比例尺寸

需求:这是我最近开发的低代码平台遇到的需求 ,要求将配置好的应用在弹框中预览(将预览网页内嵌入弹框中) 但是内嵌进入后 他会截取一部分(我源网站网页尺寸 是1980x1080 或者 3060X2160等等) 但是我这个dialog弹框只有我自定义的1000多px的宽高 他只会展示我iframe网页的一部分…

k8s之PV、PVC

文章目录 k8s之PV、PVC一、存储卷1、存储卷定义2、存储卷的作用2.1 数据持久化2.2 数据共享2.3 解耦2.4 灵活性 3、存储卷的分类3.1 emptyDir存储卷3.1.1 定义3.1.2 特点3.1.3 用途3.1.4 示例 3.2 hostPath存储卷3.2.1 定义3.2.2 特点3.2.3 用途3.2.4 示例 3.3 NFS存储卷3.3.1 …

BioVendor—sHLA-G ELISA试剂盒

人类白细胞抗原-G (HLA-G)与其他MHC类基因的不同之处在于它的低多态性和产生七种HLA-G蛋白的选择性剪接&#xff0c;这些蛋白的组织分布局限于正常的胎儿和成人组织&#xff0c;这些组织对先天和后天免疫细胞都具有耐受性。可溶性HLA-G是一种免疫抑制分子&#xff0c;诱导活化的…

PyQt5创建与MySQL数据库集成的应用程序

最近&#xff0c;对之前的mysql管理系统进行了更新升级&#xff0c;制作了一版关于车牌的管理系统&#xff01; &#xff08;1&#xff09;实现了对车牌和用户基本信息的增删改查的功能 &#xff01; &#xff08;2&#xff09;加入了对数据库的刷新和状态显示功能 &#xff…

Python3位运算符

前言 本文介绍的是位运算符&#xff0c;位运算可以理解成对二进制数字上的每一个位进行操作的运算&#xff0c;位运算分为 布尔位运算符 和 移位位运算符。 文章目录 前言一、位运算概览1、布尔位运算符1&#xff09;按位与运算符 ( & )2&#xff09;按位或运算符 ( | )3…