jQuery 手册
jQuery 是一个快速、小巧且功能丰富的 JavaScript 库,它简化了 HTML 文档遍历、事件处理、动画以及 Ajax 交互的操作。jQuery 极大地简化了 JavaScript 编程,使得开发者能够以更少的代码实现更复杂的功能。
- jQuery 基础
1.1 引入 jQuery
要使用 jQuery,首先需要将 jQuery 库引入到 HTML 文件中。可以通过 CDN 或者下载文件并引用。
通过 CDN 引入:
php
67 Bytes
© 菜鸟-创作你的创作
下载并本地引入:
php
51 Bytes
© 菜鸟-创作你的创作
1.2 jQuery 选择器
jQuery 选择器用于选择 DOM 元素,可以基于标签名、类名、ID 或属性来选择元素。
// 通过标签选择器
$('div'); // 选择所有 div 元素
// 通过类名选择器
$('.class-name'); // 选择所有 class 为 "class-name" 的元素
// 通过 ID 选择器
$('#id-name'); // 选择 ID 为 "id-name" 的元素
// 通过属性选择器
$('[type="text"]'); // 选择所有 type 属性为 "text" 的元素
php
212 Bytes
© 菜鸟-创作你的创作
1.3 文档准备就绪事件
$(document).ready() 用于确保 DOM 在操作之前已经完全加载。
$(document).ready(function() {
// 在这里执行 DOM 操作
console.log("DOM is ready!");
});
php
88 Bytes
© 菜鸟-创作你的创作
或者简写为:
$(function() {
// 在这里执行 DOM 操作
console.log("DOM is ready!");
});
php
72 Bytes
© 菜鸟-创作你的创作
1.4 jQuery 操作 DOM 元素
// 获取文本
$('#element-id').text();
// 设置文本
$('#element-id').text('New text');
// 获取 HTML 内容
$('#element-id').html();
// 设置 HTML 内容
$('#element-id').html('Bold Text');
// 获取/设置属性
$('#element-id').attr('href'); // 获取
$('#element-id').attr('href', 'https://www.example.com'); // 设置
php
287 Bytes
© 菜鸟-创作你的创作
1.5 显示与隐藏元素
// 隐藏元素
$('#element-id').hide();
// 显示元素
$('#element-id').show();
// 切换显示/隐藏
$('#element-id').toggle();
php
105 Bytes
© 菜鸟-创作你的创作
1.6 动画效果
jQuery 提供了丰富的动画效果,如 fadeIn、fadeOut、slideDown 和 slideUp。
// 淡入效果
$('#element-id').fadeIn();
// 淡出效果
$('#element-id').fadeOut();
// 滑动展开
$('#element-id').slideDown();
// 滑动收起
$('#element-id').slideUp();
php
147 Bytes
© 菜鸟-创作你的创作
1.7 jQuery 事件
jQuery 提供了常用的事件方法,如 click()、hover()、focus() 等。
// 点击事件
$('#button-id').click(function() {
alert('Button clicked!');
});
// 鼠标悬停事件
$('#element-id').hover(
function() {
// 鼠标移入
$(this).css('background-color', 'yellow');
},
function() {
// 鼠标移出
$(this).css('background-color', 'white');
}
);
php
294 Bytes
© 菜鸟-创作你的创作
1.8 Ajax 请求
jQuery 提供了简洁的 Ajax 方法,使用 $.ajax()、$.get()、$.post() 来发送请求。
// 简单的 GET 请求
$.get('https://api.example.com/data', function(response) {
console.log(response);
});
// 简单的 POST 请求
$.post('https://api.example.com/submit', { name: 'John', age: 30 }, function(response) {
console.log(response);
});
php
239 Bytes
© 菜鸟-创作你的创作
- jQuery 高级功能
2.1 jQuery 插件
jQuery 支持通过插件扩展功能,许多功能都可以通过插件来实现,例如日期选择器、图片轮播、表单验证等。
使用插件:
// 引入插件
// 初始化插件
$('#element-id').pluginName(options);
php
97 Bytes
© 菜鸟-创作你的创作
2.2 jQuery 过滤选择器
过滤选择器用于选择 DOM 元素的某个特定子集。常见的过滤选择器包括 :first、:last、:eq(index) 等。
// 选择第一个元素
$('div:first');
// 选择最后一个元素
$('div:last');
// 选择索引为 2 的元素
$('div:eq(2)');
php
86 Bytes
© 菜鸟-创作你的创作
2.3 jQuery 迭代方法
jQuery 提供了几种常用的迭代方法,如 each() 用于遍历元素集合。
$('li').each(function(index, element) {
console.log(index, $(element).text());
});
php
86 Bytes
© 菜鸟-创作你的创作
2.4 jQuery 数据存储
通过 data() 方法,可以在 DOM 元素上存储任意数据。
// 存储数据
$('#element-id').data('key', 'value');
// 获取数据
var value = $('#element-id').data('key');
php
97 Bytes
© 菜鸟-创作你的创作
2.5 jQuery 动画与过渡效果
jQuery 可以轻松创建动画和过渡效果,通过 .animate() 方法进行自定义动画。
$('#element-id').animate({
opacity: 0.5,
left: '50px'
}, 1000); // 动画持续时间为 1000 毫秒
php
90 Bytes
© 菜鸟-创作你的创作
2.6 链式调用
jQuery 支持链式调用,这使得可以将多个方法链在一起,简化代码。
$('#element-id')
.css('color', 'red')
.slideUp(1000)
.fadeIn(1000);
php
79 Bytes
© 菜鸟-创作你的创作
- jQuery 最佳实践
3.1 最小化选择器使用
尽量避免重复查询 DOM 元素,因为每次选择器都会遍历 DOM 树。可以使用缓存方式提高性能。
var $element = $('#element-id');
$element.css('color', 'red');
$element.text('New text');
php
89 Bytes
© 菜鸟-创作你的创作
3.2 使用事件委托
使用事件委托可以将事件处理程序绑定到父元素上,而不是每个子元素上,这在动态添加元素时尤为重要。
$('#parent-id').on('click', '.child-class', function() {
alert('Child clicked!');
});
php
89 Bytes
© 菜鸟-创作你的创作
3.3 使用 $(function() {}) 初始化代码
通过 $(function() {}) 或 $(document).ready() 方法,确保在 DOM 完全加载后执行 JavaScript 代码,避免未加载完成时操作 DOM 元素。
$(function() {
// DOM 完成加载后执行
$('#element-id').fadeIn();
});
php
68 Bytes
© 菜鸟-创作你的创作
- 常用的 jQuery 方法
.css():获取或设置元素的样式。
.html():获取或设置元素的 HTML 内容。
.text():获取或设置元素的文本内容。
.attr():获取或设置元素的属性。
.val():获取或设置表单控件的值。
.on():绑定事件监听器。
.off():解除事件绑定。
.fadeIn() 和 .fadeOut():淡入淡出效果。
.slideDown() 和 .slideUp():滑动展开和收起效果。
.animate():创建自定义动画。
.append()、.prepend()、.after()、.before():DOM 元素插入方法。
- jQuery 版本和兼容性
jQuery 在不同的版本中会有一些差异。通常,选择最新稳定版本来使用。新版 jQuery 对现代浏览器提供了更好的支持,同时提供了更强的功能。
jQuery 3.x:最新版本,增加了对 ES6 特性的支持,优化了性能。
jQuery 2.x:不再支持 IE 6/7/8,适合现代浏览器。
jQuery 1.x:兼容性最好,适合旧版浏览器。
- 总结
jQuery 是一个功能强大的 JavaScript 库,可以极大地简化开发工作。它不仅简化了 DOM 操作,还使得事件绑定、动画、Ajax 请求变得更容易。在许多前端开发项目中,jQuery 仍然是常用的工具之一,尤其是对于老旧项目或需要快速原型开发的场景。
如果你有更具体的需求或者对某个功能有疑问,随时可以继续提问!
https://www.52runoob.com/archives/4128