python爬虫 之 JavaScript 简单基础

在这里插入图片描述

文章目录

  • 在网页使用JavaScript 代码的方式
  • 常用的JavaScript 事件
  • 常用的JavaScript 对象

在网页使用JavaScript 代码的方式

在网页中使用 JavaScript 代码的方式主要有三种:

  1. 内联方式(Inline)

    在 HTML 文件中直接嵌入 JavaScript 代码,通过使用 <script> 标签。这段代码可以放在文档的 <head><body> 部分。例如:

    <!DOCTYPE html>
    <html>
    <head>
        <title>Inline JavaScript Example</title>
        <script>
            // JavaScript代码
            function myFunction() {
                alert("Hello, World!");
            }
        </script>
    </head>
    <body>
        <button onclick="myFunction()">Click me</button>
    </body>
    </html>
    
  2. 内部脚本(Internal Script)

    将 JavaScript 代码放置在 HTML 文件的 <script> 标签内,但是通过使用外部文件的方式引入。这有助于将 JavaScript 代码与 HTML 分离,提高代码的可维护性。例如:

    <!DOCTYPE html>
    <html>
    <head>
        <title>Internal Script Example</title>
        <script src="myscript.js"></script>
    </head>
    <body>
        <button onclick="myFunction()">Click me</button>
    </body>
    </html>
    

    其中,myscript.js 是包含 JavaScript 代码的外部文件。

  3. 外部脚本(External Script)

    将 JavaScript 代码放在一个独立的外部文件中,通过 <script> 标签引用该文件。这是最常见的方式,可以在多个页面之间共享相同的 JavaScript 代码。例如:

    HTML 文件:

    <!DOCTYPE html>
    <html>
    <head>
        <title>External Script Example</title>
        <script src="myscript.js"></script>
    </head>
    <body>
        <button onclick="myFunction()">Click me</button>
    </body>
    </html>
    

    JavaScript 文件(myscript.js):

    // JavaScript代码
    function myFunction() {
        alert("Hello, World!");
    }
    

这些方式可以根据项目的需要选择使用。内联方式适用于简单的小段代码,而外部脚本更适用于大型项目,使得代码更易维护和管理。

常用的JavaScript 事件

JavaScript 事件是指用户与网页互动时触发的行为,例如点击按钮、提交表单、鼠标悬停等。以下是一些常用的 JavaScript 事件:

  1. 点击事件(click)

    • 触发条件:用户点击页面上的元素,如按钮、链接等。

    • 示例:

      document.getElementById("myButton").addEventListener("click", function() {
          alert("Button clicked!");
      });
      
  2. 提交事件(submit)

    • 触发条件:用户提交表单时触发。

    • 示例:

      document.getElementById("myForm").addEventListener("submit", function(event) {
          event.preventDefault(); // 阻止表单的默认提交行为
          alert("Form submitted!");
      });
      
  3. 鼠标悬停事件(mouseover/mouseenter)

    • 触发条件:鼠标移动到元素上方时触发。

    • 示例:

      document.getElementById("myElement").addEventListener("mouseover", function() {
          alert("Mouse over the element!");
      });
      
  4. 鼠标离开事件(mouseout/mouseleave)

    • 触发条件:鼠标离开元素时触发。

    • 示例:

      document.getElementById("myElement").addEventListener("mouseout", function() {
          alert("Mouse out of the element!");
      });
      
  5. 键盘按下事件(keydown)

    • 触发条件:用户按下键盘上的任意键时触发。

    • 示例:

      document.addEventListener("keydown", function(event) {
          console.log("Key pressed: " + event.key);
      });
      
  6. 窗口加载事件(load)

    • 触发条件:整个页面及其所有资源加载完成时触发。

    • 示例:

      window.addEventListener("load", function() {
          alert("Page and all resources are loaded!");
      });
      

这只是一小部分常见的 JavaScript 事件。JavaScript 提供了许多其他事件,如焦点事件、变化事件、滚动事件等,开发者可以根据需要选择适合的事件来响应用户行为。

常用的JavaScript 对象

JavaScript 中有许多内置对象,每个对象都具有特定的属性和方法,用于执行各种任务。以下是一些常用的 JavaScript 对象:

  1. Object 对象

    • Object 是 JavaScript 中所有对象的基类。

    • 示例:

      var person = new Object();
      person.name = "John";
      person.age = 30;
      
  2. Array 对象

    • Array 对象用于创建和操作数组。

    • 示例:

      var colors = ["red", "green", "blue"];
      
  3. String 对象

    • String 对象用于创建和操作字符串。

    • 示例:

      var message = "Hello, World!";
      
  4. Number 对象

    • Number 对象用于处理数字值。

    • 示例:

      var num = new Number(42);
      
  5. Boolean 对象

    • Boolean 对象用于处理布尔值。

    • 示例:

      var isTrue = new Boolean(true);
      
  6. Function 对象

    • Function 对象用于创建函数。

    • 示例:

      var add = new Function("a", "b", "return a + b");
      
  7. Date 对象

    • Date 对象用于处理日期和时间。

    • 示例:

      var currentDate = new Date();
      
  8. RegExp 对象

    • RegExp 对象用于处理正则表达式。

    • 示例:

      var pattern = new RegExp("\\w+");
      
  9. Math 对象

    • Math 对象提供了执行数学计算的方法和属性。

    • 示例:

      var result = Math.sqrt(16);
      
  10. JSON 对象

    • JSON 对象用于处理 JSON 格式的数据。

    • 示例:

      var jsonData = '{"name": "John", "age": 30}';
      var person = JSON.parse(jsonData);
      

这只是 JavaScript 中一些常用对象的简介,还有其他对象和自定义对象等。了解这些对象的特性和用法,可以更好地利用 JavaScript 进行开发。

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

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

相关文章

首发!动手学大模型应用开发教程来了

大模型正逐步成为信息世界的新革命力量&#xff0c;其通过强大的自然语言理解、自然语言生成能力&#xff0c;为开发者提供了新的、更强大的应用开发选择。随着国内外井喷式的大模型 API 服务开放&#xff0c;如何基于大模型 API 快速、便捷地开发具备更强能力、集成大模型的应…

SystemC 学习之与 Verilog 的混合仿真(十)

1、SC 与 Verilog 的通信方式 Systemc 和 verilog 通信方式有两种&#xff0c;一种是 PLI&#xff0c;但是 PLI 只能 verilog 调用 c/c&#xff0c;不能从 c/c 直接调用 verilog&#xff0c;想要从 c/c 调用 verilog 的话&#xff0c;需要先用 verilog 调用 c/c 函数&#xff…

github镜像访问方法

https://ghproxy.com/ &#xff08;GitHub 文件 , Releases , archive , gist , raw.githubusercontent.com 文件代理加速下载服务&#xff09; https://mirror.ghproxy.com/ 在这个网址后面直接加上github的网址&#xff0c;如&#xff1a; https://mirror.ghproxy.com/htt…

光刻机ASML CYMER光电模块组件维修114122,S111310

1&#xff1a;436nm g-line 可以满足0.8-0.35 微米制程芯片的生产&#xff0c;对应设备有接触式和接近式光刻机。 2&#xff1a;365nm i-line 同样可以满足0.8~0.35微米制程芯片的生产。设备于上相同。 早期的光刻机采用接触式光刻&#xff0c;即掩模贴在硅片上进行光刻&…

hadoop 大数据集群环境配置 配置hadoop配置文件 hadoop(七)

1. 虚拟机的三台机器分别以hdfs 存储, mapreduce计算&#xff0c;yarn调度三个方面进行集群配置 hadoop 版本3.3.4 官网&#xff1a;Hadoop – Apache Hadoop 3.3.6 jdk 1.8 三台机器尾号为&#xff1a;22&#xff0c; 23&#xff0c; 24。&#xff08;没有用hadoop102, 103,10…

C 语言数组

C 语言数组 在本教程中&#xff0c;您将学习如何使用数组。您将借助示例学习如何声明&#xff0c;初始化和访问数组的元素。 数组是可以存储多个值的变量。例如&#xff0c;如果要存储100个整数&#xff0c;则可以为其创建一个数组。 示例 cint data[100];如何声明数组&…

vue3 el-menu初始化时选中没有高亮的问题(default-active和index的问题)

首先看官方文档的示例&#xff1a; 需要注意的是&#xff1a; 1、default-active的值是字符串&#xff0c;那么index绑定的值也要是字符串&#xff0c;且数字对应。不能default-avtive绑定的是1&#xff0c;而menu-item的index绑定的是45 2、default-active的值是当前选中me…

[工业自动化-20]:西门子S7-15xxx编程 - 软件编程 - 基本编程指令与梯形图基本元素:位逻辑指令、定时器指令、计数器指令、触发器指令

目录 一、PLC编程的基本指令 1.1 什么是PLC指令 1.2 PLC指令的分类 1.3 PLC指令与梯形图基本元素的关系 三、基本的位运算指令 四、边沿触发指令 4.1 什么是沿 4.2 沿的持续时间 4.3 使用场景 五、定时器指令 六、计数器指令 七、触发器指令 一、PLC编程的基本指令…

gpt-4-vision-preview 识图

这些图片都是流行动画角色的插图。 第一张图片中的角色是一块穿着棕色方形裤子、红领带和白色衬衫的海绵&#xff0c;它站立着并露出开心的笑容。该角色在一个蓝色的背景前&#xff0c;显得非常兴奋和活泼。 第二张图片展示的是一只灰色的小老鼠&#xff0c;表情开心&#xf…

esp32cam串口问题

选择的串口 Failed to execute script esptool不存在或开发板没有连接 设置串口参数时出错&#xff1a;9,600 N 8 1注意到他说的串口设置错误,但是在设置里不能设置串口参数 所以说是串口打印的问题 把他换成esp32用的115200就行

大模型的全面回顾,看透大模型 | A Comprehensive Overview of Large Language Models

大模型的全面回顾&#xff1a;A Comprehensive Overview of Large Language Models 返回论文和资料目录 论文地址 1.导读 相比今年4月的中国人民大学发表的大模型综述&#xff0c;这篇综述角度更侧重于大模型的实现&#xff0c;更加硬核&#xff0c;更适合深入了解大模型的一…

《从零开始读懂相对论》

内容简介 相对论诞生至今已逾百年&#xff0c;但依然被人们津津乐道。相对论为什么如此有魅力&#xff1f;爱因斯坦为什么要创立相对论&#xff1f;本书从“零”开始&#xff0c;紧抓“相对”二字&#xff0c;将所有问题置于历史的背景下&#xff0c;竭力展现人类探索运动本质…

实用篇-ES-DSL操作文档

一、mapping属性 mapping属性的官方文档: https://elastic.co/guide/en/elasticsearch/reference/current/index.html 下面的表格是介绍elasticsearch中的各个概念以及含义&#xff0c;看的时候重点看第二、三列&#xff0c;第一列是为了让你更理解第二列的意思&#xff0c;所…

论文精读 MediaPipe BlazeFace

BlazeFace:Sub-millisecond Neural Face Detection on Mobile GPUs BlazeFace&#xff1a;基于移动GPUs的亚毫秒神经人脸检测 论文地址&#xff1a;arxiv.org/pdf/1907.05047.pdf 源码地址&#xff1a;GitHub - tkat0/PyTorch_BlazeFace: Unofficial PyTorch implementation…

无需数据库服务器部署脚本,全能型开源数据库监控平台lepus

Lepus 是一款开源的数据库监控平台&#xff0c;目前已经支持 MySQL、Oracle、SQLserver、MongoDB、Redis 等数据库的基本监控和告警。 Lepus 在监控数据库时&#xff0c;无需在每台数据库服务器上部署脚本或 Agent&#xff0c;只需要在数据库中创建授权账号后&#xff0c;即可…

Python-Python高阶技巧:HTTP协议、静态Web服务器程序开发、循环接收客户端的连接请求

版本说明 当前版本号[20231114]。 版本修改说明20231114初版 目录 文章目录 版本说明目录HTTP协议1、网址1.1 网址的概念1.2 URL的组成1.3 知识要点 2、HTTP协议的介绍2.1 HTTP协议的概念及作用2.2 HTTP协议的概念及作用2.3 浏览器访问Web服务器的过程 3、HTTP请求报文3.1 H…

算法萌新闯力扣:x的平方根

力扣热题&#xff1a;69.x的平方根 开篇 这是一道练习二分查找的题目&#xff0c;简单但也有一些细节需要注意&#xff0c;如判断条件、溢出等。 题目链接:69.x的平方根 题目描述 代码思路 1.一开始使用暴力解&#xff0c;发现超时了&#xff0c;看了标签&#xff0c;原来又…

thinkphp6(TP6)访问控制器报404(Nginx)

起因&#xff1a; 安装thinphp6后&#xff0c;发现无法访问控制器&#xff0c;直接通过URL访问&#xff0c;就报错404。 错误原因&#xff1a; Nginx不支持URL的 PathInfo。 解决方法&#xff1a; 配置伪静态。 伪静态代码&#xff1a; location / {if (!-e $request_filen…

MyBatis源码分析

MyBatis源码分析 MyBatis是常用的持久层框架&#xff0c;帮助我们减少了很多的访问数据库的代码。这次我们就来看看MyBatis是怎么做到这些的&#xff1f;看看它里面用到了哪些值得我们借鉴的技术。 一、示例程序 为了方便后续在本地进行debug调试&#xff0c;首先准备一个示…

【Hello Algorithm】单调栈(未完待续)

单调栈解决的问题 我们单调栈的提出主要是为了解决这么一个问题 现在给我们一个数组 现在要求你建立一张表 这张表中能够查询到两个信息 这两个信息分别是 当前数字左边小于该数字并且下标位置最相近的下标当前数字右边小于该数字并且下标位置最相近的下标 同理 大于也可以…