JavaWeb JavaScript 6.事件

你摸黑偷偷赶得路,都会变成意外来袭时你少受的苦

                                                                        —— 24.8.29

一、什么是事件

HTML 事件可以是浏览器行为,也可以是用户行为。
当一些行为发生时,可以自动触发对应的JS函数的运行,我们称之为事件发生,JS的
件驱动
指的就是行为触发代码运行的这种特点

二、事件的绑定方式

① 通过元素的属性绑定 on ***

② 通过DOM编程动态绑定

注意:一个事件可以同时绑定多个函数

三、常见事件

1.鼠标事件

① onmouseover —— 鼠标悬停

② onmousemove —— 鼠标移动

③ onmouseleave —— 鼠标离开

④ onclick —— 单击

⑤ ondblclick —— 双击

2.键盘事件

① onkeydown —— 键盘的按下

② onkeyup —— 键盘的开启

3.表单事件

① onfocus —— 获取焦点事件

② onblur —— 失去焦点事件

③ onsubmit —— 表单提交事件

④ onreset —— 表单重置事件

4.页面加载事件

onload

5.常见事件演示代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=, initial-scale=1.0">
    <title>Document</title>
    <script>
        function myFunction1() {
            console.log('你单击了按钮1!')
        }

        function myFunction2() {
            console.log('你点击了按钮2!')
        }

        function myFunction3() {
            console.log('你双击了按钮3!')
        }   

        function myFunction4() {
            console.log('你按下了回车键!')
        }

        function myFunction5() {
            console.log('你按下了Esc键!')
        }   

        function myFunction6() {
            console.log('你按下了空格键!')
        }   

        function myFunction7() {
            console.log("鼠标悬停了!")
        }

        function myFunction8() {
            console.log("鼠标移出了!")
        }

        function myFunction9() {
            console.log("鼠标移动了!")
        }

        function myFunction10() {
            console.log("键盘按下了!")
        }

        function myFunction11() {
            console.log("键盘松开了!")
        }

        /*
            1.事件的绑定方式
                ① 通过元素的属性绑定 on***
                ② 通过DOM编程动态绑定
                注意事项:一个事件可以同时绑定多个函数

            2.常见的事件
                ① 鼠标事件 onmouseover(鼠标悬停)、onmousemove(鼠标移动)、onmouseleave(鼠标离开)、onclick(单击)、ondblclick(双击)
                ③ 键盘事件 onkeydown(键盘的按下)、onkeyup(键盘的开启)、onkeypress(某个键盘按键被按下并松开)
                ③ 表单事件 onfocus(获取焦点事件)、onblur(失去焦点事件)、onsubmit(表单提交事件)、onreset(表单重置事件)
                ④ 页面加载事件 onload

            3.事件的触发
                ① 行为触发
                ② DOM编程触发
        */

        function testFocus() {
            console.log("获取焦点了!")
        }

        function testBlur() {
            console.log("失去焦点了!")
        }

        function testSubmit() {
            console.log("提交了!")
        }

        function testChange(value) {  
            console.log("内容改变为:"+value)
        }

        function testChange2(){
            console.log("选项改变了!")
        }

        function testSubmit(){
            /*
            弹窗的三种方式
            alert("表单发生提交了!");  信息提交框
            confirm("你确定要提交吗?")     信息确认框
            prompt("请输入你的评论:")      信息输入框
            */
           var result = confirm("你确定要提交吗?");
           if(result){
               alert("表单发生提交了!");
           }else{
               alert("表单未提交!");
               event.preventDefault();// 阻止组件的默认提交行为,可以动态选择
           }
        }

        function testReset(){
        console.log("表单重置了!")
        }    
    </script>


</head>
<body>
    <!-- 鼠标事件 -->
    <input 
        type="button"
        value="按钮"
        onclick="myFunction1(), myFunction2()"
        ondblclick="myFunction3()"
    >
    <br>

    <!-- 键盘事件 -->
    <img src="img/夕阳.jpg" onmouseover="myFunction7()" onmouseout="myFunction8()" onmousemove="myFunction9()">
    <br>
    <input type="text" onkeydown="myFunction10()" onkeyup="myFunction11()">
    <br>

    <!-- 表单事件 -->
    <form action="01JS引入方式.html" method="get" onsubmit="return testSubmit()" onreset="testReset()">
        用户昵称:<input 
            type="text" 
            name="realName" 
            onfocus="testFocus()"
            onblur="testBlur()"
            onchange="testChange(this.value)"
            > <br>
        登陆账号:<input 
            type="text" 
            name="logoinName"
            onfocus="testFocus()"
            onblur="testBlur()"
            onchange="testChange()"
        ><br>
        选择籍贯:
        <select 
            name="province"
            onchange="testChange2()">
            <option value="北京">北京</option>
            <option value="上海">上海</option>
            <option value="广州">广州</option>
        密码:<input 
            type="password" 
            name="password"
            onfocus="testFocus()"
            onblur="testBlur()"
            onchange="testChange()"
            ><br>
        <input 
            type="submit" 
            value="注册"
            >
        <input 
        type="reset" 
        value="重置">
        <br>
</body>
</html>

四、事件的触发

1.行为触发

2.DOM编程触发

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        /*
            1.事件的绑定方式
                ① 通过元素的属性绑定 on***
                ② 通过DOM编程动态绑定
                注意事项:一个事件可以同时绑定多个函数

            2.常见的事件
                ① 鼠标事件 onmouseover(鼠标悬停)、onmousemove(鼠标移动)、onmouseleave(鼠标离开)、onclick(单击)、ondblclick(双击)
                ③ 键盘事件 onkeydown(键盘的按下)、onkeyup(键盘的开启)、onkeypress(某个键盘按键被按下并松开)
                ③ 表单事件 onfocus(获取焦点事件)、onblur(失去焦点事件)、onsubmit(表单提交事件)、onreset(表单重置事件)
                ④ 页面加载事件 onload (页面加载完成事件)、onunload(页面卸载事件)

            3.事件的触发
                ① 行为触发
                ② DOM编程触发
        */
    </script>    

    <script>
        function ready(){
            // 通过DOM获得要操作的元素
            var btn = document.getElementById("btn1");
            // 绑定一个单击事件,直接声明一个函数
            btn.onclick = function(){
            alert("按钮被单击了!");
            }
        }

        window.onload = function(){
            // 为div1绑定单击事件,单击变红
            var div1 = document.getElementById("d1");
            div1.onclick = function(){
                div1.style.backgroundColor = "red";
            }

            // 通过DOM获得要操作的元素
            var btn = document.getElementById("btn1");
            // 绑定一个单击事件,直接声明一个函数
            btn.onclick = function(){
                alert("按钮被单击了!");
                // 通过DOM编程动态绑定一个事件,相当于某些事件被触发了
                div1.onclick();     // 触发div的单击事件
            }
        }

    </script>

    <style> 
        .div1{
            width: 100px;
            height: 100px;
            background-color: yellow;
        }
    </style>
</head>
<body>
    <div id="d1" class="div1">

    </div>
    <button id="btn1">按钮</button>
</body>
<!-- 
<body onload="ready()">
    <button id="btn1">按钮</button>
</body> 
-->
</html>

### 回答1: 要修改JavaWeb的默认index.jsp页面,可以按照以下步骤操作: 1. 打开JavaWeb项目的WebContent目录,找到默认的index.jsp文件。 2. 右键点击该文件,选择“重命名”,将其改名为其他名称,比如“home.jsp”。 3. 创建一个新的index.jsp文件,可以使用任何文本编辑器打开,比如Notepad++、Sublime Text等。 4. 在新的index.jsp文件中编写自己的代码,可以是HTML、CSS、JavaScript等。 5. 保存新的index.jsp文件,并将其放置在WebContent目录下。 6. 打开JavaWeb项目的web.xml文件,找到如下代码: <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> 7. 将其中的“index.jsp”改为自己创建的新的默认页面的名称,比如“home.jsp”。 8. 保存web.xml文件,重新启动JavaWeb项目,即可看到新的默认页面。 ### 回答2: 在传统的JavaWeb项目中,index.jsp通常作为项目的入口文件,它的目的是展示欢迎页或者提供一些导航功能。然而,在某些情况下,我们需要修改默认的index.jsp页面,以满足项目的特殊需求。 首先,我们需要查找并编辑web.xml文件,它是JavaWeb项目中的一个核心配置文件。我们需要在web.xml中添加一个welcome-file-list元素,指定我们想要作为默认欢迎页的页面。例如,如果我们想要使用home.jsp作为默认页面,我们可以使用以下代码段更新web.xml: ``` <welcome-file-list> <welcome-file>home.jsp</welcome-file> </welcome-file-list> ``` 然后,我们需要在项目的根目录中添加home.jsp文件,并将其内容定义为我们想要展现的内容。这个过程可能涉及到Java语言、HTML、CSS和JavaScript等技术,具体实现方式取决于项目的具体需求。 最后,我们需要验证更新后的默认页面是否可以正常展示。为此,我们可以使用JavaWeb项目的Servlet容器,例如Tomcat或者Jetty,启动项目,并在浏览器中输入服务器地址和端口号。如果一切正常,我们应该可以看到项目的新的欢迎页了。 需要注意的是,修改默认index.jsp页面可能会影响到项目的其他部分,因此我们需要谨慎考虑每一步的操作,并在实践之前备份项目文件,以免意外问题损坏项目。 ### 回答3: JavaWeb是基于Java语言的Web开发框架,它包含了众多的技术和组件,其中最常用的技术就是Servlet和JSP,它们可以帮助我们开发出高效、可靠的Web应用程序。 默认情况下,JavaWeb应用程序的首页文件是index.jsp,而且它一般被放置在Web应用程序的根目录下面。如果我们需要修改默认的index.jsp页面,可以按照以下步骤来实现: 1. 在Eclipse或其他Java开发工具中打开JavaWeb应用程序的工程,在WebRoot目录下找到原始的index.jsp页面。 2. 备份原始的index.jsp页面,以便在需要的情况下可以恢复它。 3. 创建一个新的JSP页面来替换原有的index.jsp,可以命名为home.jsp、main.jsp或其他名称,只要它符合我们的需求即可。新建一个home.jsp文件,放入WebRoot文件夹下。 4. 修改web.xml配置文件中欢迎页面的配置, 在</web-app>标签下面添加如下代码: <welcome-file-list> <welcome-file>home.jsp</welcome-file> </welcome-file-list> 其中,home.jsp是我们新创建的首页文件,可以根据需要自行修改。 5. 保存修改后的web.xml文件,重新部署Web应用程序即可。 这样,当用户访问JavaWeb应用程序时,就会显示我们新建的home.jsp页面,而不再是原有的index.jsp页面。同时,我们也可以在home.jsp页面中添加自己的内容,来实现更多的功能和效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值