【JavaScript】网页交互的灵魂舞者

简介: 本文介绍了 JavaScript 的三种引入方式(行内、内部、外部)和基础语法,包括变量、数据类型、运算符、数组、函数和对象等内容。同时,文章还详细讲解了 jQuery 的基本语法和常用方法,如 `text()`、`html()`、`val()`、`attr()` 和 `css()` 等,以及如何插入和删除元素。通过示例代码和图解,帮助读者更好地理解和应用这些知识。

1. JavaScript 的三种引入方式

引⼊⽅式

语法描述

⽰例

⾏内样式

直接嵌⼊到 html 元素内部

<input type="button" value="点我⼀下" onclick="alert('haha')">

内部样式

定义<script>标签,写到 script 标签中

<script> alert("haha"); </script>

外部样式

定义<script >标签,通过src属性引⼊外部js⽂件

<script src="hello.js"></script>

1.1. 行内样式

<input type="button" value="点我⼀下" onclick="alert('haha')">

1.2. 内部样式

JavaScript 可以在 html 的 script 标签里进行编辑,通过 alert 方法可以实现一个浏览器弹窗的效果

<body>
    <script>
        alert("hello");
    </script>
</body>

1.3. 外部样式

alert("Hello World!");

<body>
    <script src="test.js"></script>
</body>

2. 基础语法

2.1. 变量

关键字

解释

示例

var

早期JS中声明变量的关键字, 作⽤域在该语句的函数内

var name = 'zhangsan';

let

ES6 中新增的声明变量的关键字, 作⽤域为该语句所在的代码块内

let name = 'zhangsan';

const

声明常量的,声明后不能修改

const name = 'zhangsan';

JavaScript 的变量可以存放不同的类型的值,一个 var 可以声明各种变量,这些变量的类型在程序运行的过程中还可能发生改变

<script>
    var a = 10;
    a = "nihao"
    alert(a);
</script>

还可以通过控制台打印日志的方式,调用 typeof 来查看当前变量的类型

var a = 10;
console.log(typeof a);
a = "nihao"
console.log(typeof a);

数据类型

数据类型

描述

number

数字. 不区分整数和⼩数.

string

字符串类型. 字符串字⾯值需要使⽤引号引起来, 单引号双引号均可.

boolean

布尔类型. true 真, false 假

undefined

表⽰变量未初始化. 只有唯⼀的值 undefined.

2.2. 运算符

运算符大部分都是和 Java 相等的,这里介绍一下 “==”和“===”的区别

let num1 = 20;
let num2 = "20";
console.log(num1 == num2);
console.log(num1 === num2);

== ⽐较相等(会进⾏隐式类型转换)

=== ⽐较相等(不会进⾏隐式类型转换)

2.3. 数组

创建数组也是有两种方式,首先就是通过 new 关键字来创建数组

var arr = new Array();

另一种就是通过字面量创建

var arr1 = [];
var arr2 = [1, 2, 3];

和 Java 不同的就是,JavaScript 的数组的大小可以更改,里面也可以存储很多类型

var arr = [1, 2, 'haha', false];

再来看新增,数组下标为 - 1 时的值也可以更改,也可以不按照下标顺序新增,断开的下标都用 empty 表示,但是薪资 -1 下标并不会影响数组的长度

2.4. 函数

function add(num1, num2) {
  return num1 + num2;
}
let ans = add(1, 2);
console.log(ans);

参数个数多传也没关系:

参数少传的话就会有点问题,如果类型符合,那么就是一个数字加上了一个未定义的值

如果传入的是字符串,就会按照字符串拼接的方式

也可以没有返回值:

还可以把函数名省略掉

2.5. 对象

JavaScript 中创建对象使用一组  { }  ,里面的属性和值通过键值对来组织,键值对之间使用逗号分割,键和值之间用冒号区分,获取对象的属性也是通过 ' . ' 来获取,还可以通过 ' [ ] ' 来访问属性,此时属性需要加上引号

var person = {
  name: "张三",
  age: 18,
  sayHello: function () {
    console.log("hello");
  }
}
console.log(person.name);
console.log(person['age']);

也可以使用 Object 的方式 new 对象

还可以通过 this 去修改一些属性的值

3. jQuery

jQuery 语法是通过选取 HTML 元素, 并对选取的元素执⾏某些操作

基础语法:$(selector).action()

$( ) 是 jQuery 提供的⼀个全局函数, ⽤于选择和操作 HTML 元素

Selector 选择器, ⽤来"查询"和"查找" HTML 元素
action 操作, 执⾏对元素的操作

<button id="btn">点我</button>
<script src="jquery-3.7.1.min.js"></script>
<script>
    $(document).ready(function (){
        console.log("加载完成");
        $("#btn").click(function (){
            $(this).hide();
        });
    });
</script>

JQuery 的代码通常都写在 document ready 函数中 ,这样可以保证在文档加载完之后才能对页面进行操作

JQuery⽅法

说明

text()

设置或返回所选元素的⽂本内容

html()

设置或返回所选元素的内容(包括 HTML 标签)

val()

设置或返回表单字段的值

text()

<body>
    <div id = "content">
        <h1>我是一个文本</h1>
    </div>
    <button id="btn">点我</button>
    <script src="jquery-3.7.1.min.js"></script>
    <script>
        $(document).ready(function (){
            $("#btn").click(function (){
                $(this).hide();
            });
        });
        let content = $("#content").text();
        console.log(content);
    </script>
</body>

通过 text() 方法成功的获得了所选元素的文本内容,如果修改所选元素的文本内容的话,就需要传入参数

html( )

html( ) 方法是可以获取并设置 html 标签的,这一点和 text( ) 方法有区别

val( )

再来看 val() 方法,val 是获取或者设置表单字段的值,同理,如果有参数就表示设置值,没有参数就表示获取值

attr ()

还可以通过 attr () 方法来获取或者设置属性值


通过 css() 方法获取样式

获取 CSS 样式

设置 CSS 样式

插入

删除

remove:删除被选元素及其子元素

empty:删除被选元素的子元素

相关文章
|
7月前
|
JavaScript 算法 开发者
如何用JS实现在网页上通过鼠标移动批量选择元素的效果?
本文介绍了类似电脑桌面通过鼠标选择多个图标的实现原理。主要通过监听mousedown、mousemove和mouseup事件,动态调整选择框大小并计算与元素的重叠情况。提供了角重叠和相交重叠的检测方法,并附有示例代码和在线演示链接,方便开发者参考与测试。
250 56
|
6月前
|
Web App开发 数据采集 JavaScript
动态网页爬取:Python如何获取JS加载的数据?
动态网页爬取:Python如何获取JS加载的数据?
1057 58
|
3月前
|
编解码 JavaScript 前端开发
如何在网页播放英文的m3u8文件(基于Javascript搭建的在线网页工具)
什么是m3u8?又该如何在网页中高效、便捷地播放英文的m3u8文件呢?今天这篇文章就带你一起了解,并推荐一种基于Javascript搭建的在线网页工具,让你轻松解决播放问题。
774 0
|
6月前
|
数据采集 Web App开发 JavaScript
Python爬虫如何获取JavaScript动态渲染后的网页内容?
Python爬虫如何获取JavaScript动态渲染后的网页内容?
|
存储 JavaScript 前端开发
使用JavaScript构建动态交互式网页:从基础到实践
【10月更文挑战第12天】使用JavaScript构建动态交互式网页:从基础到实践
559 1
|
11月前
|
数据采集 人工智能 自然语言处理
Midscene.js:AI 驱动的 UI 自动化测试框架,支持自然语言交互,生成可视化报告
Midscene.js 是一款基于 AI 技术的 UI 自动化测试框架,通过自然语言交互简化测试流程,支持动作执行、数据查询和页面断言,提供可视化报告,适用于多种应用场景。
2708 1
Midscene.js:AI 驱动的 UI 自动化测试框架,支持自然语言交互,生成可视化报告
|
12月前
|
缓存 JavaScript 前端开发
JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用
本文深入讲解了 JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用。
410 5
|
12月前
|
JSON 前端开发 JavaScript
聊聊 Go 语言中的 JSON 序列化与 js 前端交互类型失真问题
在Web开发中,后端与前端的数据交换常使用JSON格式,但JavaScript的数字类型仅能安全处理-2^53到2^53间的整数,超出此范围会导致精度丢失。本文通过Go语言的`encoding/json`包,介绍如何通过将大整数以字符串形式序列化和反序列化,有效解决这一问题,确保前后端数据交换的准确性。
309 4
|
12月前
|
设计模式 前端开发 JavaScript
揭秘!前端大牛们如何巧妙利用JavaScript,打造智能交互体验!
【10月更文挑战第30天】前端开发领域充满了无限可能与创意,JavaScript作为核心语言,凭借强大的功能和灵活性,成为打造智能交互体验的重要工具。本文介绍前端大牛如何利用JavaScript实现平滑滚动、复杂动画、实时数据更新和智能表单验证等效果,展示了JavaScript的多样性和强大能力。
296 4