JavaScript 动态网页实例 —— 事件处理应用

前言

事件处理的应用很广泛。在事件处理的应用中,鼠标事件的应用是最常用到的。本章给出几个鼠标事件处理应用的示例,包括:页面预览、图像切换、点亮文本、鼠标跟随、鼠标感应和禁用鼠标按键。在这些示例中,有的可以直接拿来应用,有的则只提供了一种应用的方法,稍加拓展,即可作出更加漂亮的应用。

8.1  页面预览

        在Web页面中,可以在打开一个链接页面前对该页面进行预览。本节实例给出一种页面预览的实现方法。

要点

本节代码主要使用了onMouseOver事件和src属性,主要功能和用法如下。

  • 当鼠标移动到页面的标签时,onMouseOver 事件会被触发。该事件可以调用相应的函数作为其事件处理函数。函数中,可以是任意合法的JavaScript代码。
  • scr 属性对应 HTML, 中<img>标签的 src 属性,用于表示<ig>中要显示的图像。该属性可以赋值,根据不同的值,调用并显示不同的图像。
  • <img>标签还有 width 和 heigth 属性,用于指出图像将以何种大小进行显示。如果不指定这两个属性的值,图像将以原始大小显示;如果仅指定其中一个属性的值,另一个属性的取值将是图像原始大小的值。
<html>
<head>
<title>超级链接页面预览</title>
</head>
<body bgcolor="#ffcc00">
<center>
<form name=form1>
<h1>超级链接页面预览</h1><hr>
<h5>将鼠标移至超链接上查看页面预览……</h5>
<table border="1" bordercolor="green" cellspacing="15" cellpadding="15">
<tr>
<td>
<a href="http://localhost/example1.htm" name=link1 onMouseOver="link1Over()">内部链接一</a><br><br>
<a href="http://localhost/example2.htm" name=link2 onMouseOver="link2Over()">内部链接二</a><br><br>
<a href="http://localhost/example3.htm" name=link3 onMouseOver="link3Over()">内部链接三</a><br><br>
<a href="http://localhost/example4.htm" name=link4 onMouseOver="link4Over()">内部链接四</a><br><br>
<a href="http://localhost/example5.htm" name=link5 onMouseOver="link5Over()">内部链接五</a>
</td>
<td>

<img name="img1" src="image1.gif" width=236 height=150>
</td>
</tr>
</table>
</form>
</center>
</body>
<script language=javascript>
<!--
function link1Over()
{
document.form1.img1.src="image1.gif"
}
function link2Over()
{
document.form1.img1.src="image2.gif"
}
function link3Over()
{
document.form1.img1.src="image3.gif"
}
function link4Over()
{
document.form1.img1.src="image4.gif"
}
function link5Over()
{
document.form1.img1.src="image5.gif"
}
//-->
</script>

</html>

9d44aaab708c4da084590e9a70ff4801.png

分析

  • (1)程序首先建立了一组超级链接,每个超级链接都有各自的名称(name),方便以后调用。并且,每个超级链接都有一个onMouseOver 事件,分别对应各自的事件处理函数。当onMouseOver事件发生时,该函数将被调用。
  • (2)每个事件处理函数都只有一行代码,调用document.form1.imgl.src 属性,为其赋不同的值。这样,当该函数被调用时,名为imgl的<img>标签的内容将被相应的图像替换,完
  • 成图像替换显示。
  • (3)在<img name="imgl" src="imagel.gif" width=236 height-150>中,不但指定了<img的名称,还指定了其src值,用于在页面载入时显示默认的图像,同时,还指定了要显示的图像的高度和宽度。由于事件处理函数只是改变了<img>的src值,其他内容并未改变,因此,所有图像都会以指定的大小显示。
  • (4)本例中所选图像可以替换为相应页面的缩略图,这样,当鼠标指向该链接时,用户可首先看到该缩略图。

8.2 图像切换

        本节实例给出一个图像切换的方法,当鼠标移动到某个图像时,该图像会切换为另一幅图像;当鼠标离开该图像后,又换回原来的图像。

要点

        本节代码主要使用了 onMouseOver 事件、onMouseOut 事件和 HTML 中<img>标签 src属性,主要功能和用法如下。        

  • 当鼠标移动到页面的标签时,onMouseOver 事件会被触发。该事件可以调用相应的函数,作为其事件处理函数。函数中,可以是任意合法的JavaScript代码。
  • 当鼠标移开页面的标签时&

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

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

相关文章

深入解析RedisSearch:全文搜索的新维度

码到三十五 &#xff1a; 个人主页 在当今的数据时代&#xff0c;信息的检索与快速定位变得尤为关键。Redis&#xff0c;作为一个高性能的内存数据库&#xff0c;已经在缓存和消息系统中占据了重要地位。然而&#xff0c;Redis并不直接支持复杂的搜索功能。为了填补这一空白&am…

QT7_视频知识点笔记_3_自定义控件,事件处理器⭐,定时器,QPainter,绘图设备,不规则窗口

第三天&#xff1a; 自定义控件&#xff0c;事件处理器⭐&#xff0c;定时器&#xff0c;QPainter,绘图设备&#xff0c;不规则窗口实现 1.自定义控件&#xff1a; 创建新的QT控件类&#xff0c;然后再需要使用的地方--》提升为 来使用如何使用基础控件的信号和槽函数&…

Flutter-Statewidget 创建State过程State<XXXX> createState() => _XXXXState()的解释

文章目录 创建widget 的状态对象示例代码解析 完整的代码示例总结 创建widget 的状态对象 今天有个同学问了我下State createState() > _XXXXState()时什么意思。这个代码在flutter开发中一直看到&#xff0c;很多人都不关心这个&#xff0c;直接当模板使用。今天来介绍下这…

Python中tkinter编程入门3

在使用tkinter创建了窗口之后&#xff0c;可以将一些控件“放置”到窗口中。这些控件包括标签、按键以及输入框等。 1 在窗口中“放置”标签 在窗口中“放置”标签主要有两个步骤&#xff0c;一是创建标签控件&#xff0c;二是将创建好的标签“放置”到窗口上。 1.1 创建标签…

Maven- Profile详解

前言 Profile能让你为一个特殊的环境自定义一个特殊的构建&#xff1b;profile使得不同环境间构建的可移植性成为可能。 <project><profiles><profile><build><defaultGoal>...</defaultGoal><finalName>...</finalName><…

通过自建镜像方式搭建RabbitMQ集群

通过自建镜像方式搭建RabbitMQ集群 1. 应用准备1.1 应用目录结构1.2 配置文件1.2.1 .erlang.cookie1.2.2 hosts1.2.3 rabbitmq.conf1.2.4 rabbitmq-env.conf 2. 编写DockerFile2.1 将所有本地文件拷贝到工作目录2.2 拷贝文件到源目录&增加执行权限2.3 安装Erlang & rab…

WAAP全站防护理念,发现和保护敏感数据

数据是现代企业的新石油&#xff1a;正确使用它可以促进公司的发展并帮助企业在竞争中领先。就像石油一样&#xff0c;原始数据和未被发现的数据是毫无用处的&#xff0c;企业将无法从中受益&#xff1b;在最坏的情况下&#xff0c;它可能会导致安全事件。这也是企业投资敏感数…

Python | Leetcode Python题解之第75题颜色分类

题目&#xff1a; 题解&#xff1a; class Solution:def sortColors(self, nums: List[int]) -> None:n len(nums)p0, p2 0, n - 1i 0while i < p2:while i < p2 and nums[i] 2:nums[i], nums[p2] nums[p2], nums[i]p2 - 1if nums[i] 0:nums[i], nums[p0] num…

R语言数据探索与分析-碳排放分析预测

# 安装和加载需要的包 install.packages("readxl") install.packages("forecast") install.packages("ggplot2") library(readxl) library(forecast) library(ggplot2)# 数据加载和预处理 data <- read_excel("全年数据.xlsx") co…

全新神经网络架构KAN——本文用于学习与探索

论文地址&#xff1a;https://arxiv.org/pdf/2404.19756 Github&#xff1a;GitHub - KindXiaoming/pykan: Kolmogorov Arnold Networks 文档说明&#xff1a;Welcome to Kolmogorov Arnold Network (KAN) documentation! — Kolmogorov Arnold Network documentation 本文仅…

A计算机上的程序与B计算机上部署的vmware上的虚拟机的程序通讯 如何配置?

环境&#xff1a; 在A计算机上运行着Debian11.3 Linux操作系统&#xff1b;在B计算机上运行着Windows10操作系统&#xff0c;并且安装了VMware软件&#xff0c;然后在VMware上创建了虚拟机C并安装了CentOS 6操作系统 需求&#xff1a; 现在A计算机上的程序需要同虚拟机C上的软…

【RAG 论文】Contriever:对比学习来无监督训练文本嵌入模型

论文&#xff1a;Unsupervised Dense Information Retrieval with Contrastive Learning ⭐⭐⭐⭐⭐ Facebook Research, arXiv:2112.09118 Code&#xff1a;github.com/facebookresearch/contriever 一、论文速读 本文使用对比学习的方法来对文本检索模型做无监督学习训练&am…

MySQL-索引篇

文章目录 什么是索引&#xff1f;索引的优缺点索引底层数据结构选型Hash表二叉查找树AVL树红黑树B树&B树 索引类型总结主键索引二级索引聚集索引与非聚集索引聚集索引非聚集索引 覆盖索引与关联索引覆盖索引联合查询最左前缀匹配原则 索引下推如何正确使用索引选择合适的字…

信息检索(35):LEXMAE: LEXICON-BOTTLENECKED PRETRAINING FOR LARGE-SCALE RETRIEVAL

LEXMAE: LEXICON-BOTTLENECKED PRETRAINING FOR LARGE-SCALE RETRIEVAL 标题摘要1 引言2 相关工作3 LEXMAE&#xff1a;词典瓶颈屏蔽自动编码器3.1 语言建模编码器3.2 词典瓶颈模块3.3 弱化掩蔽式解码器3.4 词汇加权检索器的预训练目标和微调 4 实验4.1 主要评估4.2 效率分析与…

「云渲染教程」3D渲染时GPU内存不足怎么解决?

在进行三维场景渲染时&#xff0c;如果遇到模型较为复杂&#xff0c;用户们可能会面临图形处理单元&#xff08;GPU&#xff09;内存不足的挑战。这种情况通常意味着现有的硬件配置不足以满足渲染任务的需求。为了缓解GPU的工作压力&#xff0c;可以采取一些策略来优化资源的分…

如何使用联合体判断一个机器是大端还是小端

如何使用联合体判断一个机器是大端还是小端 #include<iostream> using namespace std; union Checker//联合体中的数据共享内存 {int val;char ch[2]; }; int main() {Checker checker;checker.val 0x1234;if (checker.ch[0] 0x34)//数组中的数据是由低地址往高地址存放…

Arduino-ILI9341驱动开发TFT屏显示任意内容三

Arduino-ILI9341驱动开发TFT屏显示任意内容三 1.概述 这篇文章介绍使用ILI9341驱动提供的函数控制TFT屏显示字符串、图形、符号等等内容的编辑和展示。 2.硬件 2.1.硬件列表 名称数量Arduino Uno12.8" TFT彩色液晶触摸屏模块&#xff08;ILI9431&#xff09;110K 电阻…

什么是web3D?应用场景有哪些?如何实现web3D展示?

Web3D是一种将3D技术与网络技术完美结合的全新领域&#xff0c;它可以实现将数字化的3D模型直接在网络浏览器上运行&#xff0c;从而实现在线交互式的浏览和操作。 Web3D通过将多媒体技术、3D技术、信息网络技术、计算机技术等多种技术融合在一起&#xff0c;实现了它在网络上…

QT6 android程序界面强制横屏显示不旋转

QT6开发的Android程序有时候旋转后程序会变形&#xff0c;比如想让其固定位横屏显示&#xff0c;就需要进行特殊设置&#xff0c;本文提供一种简便的设置方法。 一.AndroidManifest.xml文件介绍 Android的Manifest.xml文件是一个重要的配置文件&#xff0c;用于描述应用程序的…

2024.5.9 关于 SpringCloud —— Nacos 的安装与配置

目录 Windos 安装步骤 docker 启动 nacos Windos 安装步骤 1&#xff09;点击下方链接&#xff0c;进入并访问 nacos 官网 Nacos官网 | Nacos 官方社区 | Nacos 下载 | Nacos 2&#xff09;按照下图箭头指示下载对应版本的压缩包 3&#xff09;此时我们将得到一个压缩包&…