jQuery常用知识点总结以及平时封装常用函数

jQuery常用知识点总结

为什么需要jQuery

JavaScript 语言是用来制作交互式网页效果的,但是在使用原生JS来处理DOM对象时会出现很多繁琐的操作,并且不兼容性很高。jQuery的出现正是为了解决这些问题,在JS基础上封装了一套API,使得开发者处理DOM元素、事件、Ajax等的代码更加简洁高效,并且兼容性也很好。

jQuery基础知识点

1. jQuery的引入

jQuery可以通过CDN引入,也可以下载后引入:

<!-- 通过CDN的引入 -->
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script>

<!-- 或者下载后引入,如下: -->
<script src="/path/to/jquery.min.js"></script>

2. 等待DOM加载完毕

为了确保代码能够正确运行,我们需要在DOM结构构建完毕后才开始执行代码。这一般通过 jQuery.ready()$(document).ready() 来实现。

$(document).ready(function () {
  // 在DOM结构构建完成后执行的代码
});

3. jQuery选择器

jQuery的选择器可以很方便地基于CSS选择器来查找元素。这里列出了一些常见的选择器:

选择器 说明
#id 通过id查找元素
.class 通过class查找元素
tag 通过标签名查找元素
* 匹配所有元素
:eq() 选取带有指定 index 值的元素
// 选取ID为wrapper的元素
$('#wrapper')

// 选取class为list的元素
$('.list')

// 选取所有的a标签
$('a')

// 选取第2个li标签
$('li:eq(1)')

4. DOM操作

通过jQuery可以方便地操作DOM元素,下面是一些常用的DOM操作方法:

  • text():获取或设置元素的文本内容。
  • html():获取或设置元素的HTML内容。
  • val():获取或设置表单元素的值。
  • attr():获取或设置元素的属性。
  • css():获取或设置元素的样式属性。
  • addClass():为元素添加一个CSS类。
  • removeClass():移除元素的一个CSS类。
// 设置h1元素的文本内容
$('h1').text('Hello jQuery!')

// 添加一个class到div元素上
$('div').addClass('my-class')

// 获取一个input元素的值
$('input').val()

// 获取或设置img元素的src属性
$('img').attr('src', '/path/to/image.jpg')

// 移除一个p元素的CSS类
$('p').removeClass('active')

5. 事件处理

jQuery支持各种DOM事件,包括鼠标事件、键盘事件、表单事件等,事件的处理函数可以通过 on() 方法来定义:

// 执行一段代码以响应点击事件
$('button').on('click', function () {
  // 处理点击事件的代码
});

// 响应键盘事件
$(document).on('keyup', function () {
  // 处理键盘事件的代码
});

6. Ajax请求

jQuery封装了Ajax请求,可以很方便地向服务器端发送HTTP请求并处理响应。下面是一个简单的例子,发起一个GET请求并在响应成功后处理响应数据:

$.get('/api/some-data', function (data) {
  // 处理响应数据的代码
});

平时封装常用函数

下面是两个简单的例子,封装了一些常用的功能函数:

1. 分页

function pagination(total, current, pageSize) {
  let pageCount = Math.ceil(total / pageSize);
  let prev = current - 1;
  let next = current + 1;
  let pages = [];

  if (prev > 0) {
    pages.push(prev > pageCount ? pageCount : prev);
  }

  for (let i = 1; i <= pageCount; i++) {
    if (Math.abs(i - current) <= 2) {
      pages.push(i);
    }
  }

  if (next <= pageCount) {
    pages.push(next);
  }

  return pages;
}

2. 模态框

function modal(options) {
  let template = `
    <div class="modal fade" id="${options.id}">
      <div class="modal-dialog" role="document">
        <div class="modal-content">
          <div class="modal-header">
            <h5 class="modal-title" id="${options.id}-title">${options.title}</h5>
            <button type="button" class="close" data-dismiss="modal" aria-label="Close">
              <span aria-hidden="true">&times;</span>
            </button>
          </div>
          <div class="modal-body">
            ${options.content}
          </div>
          <div class="modal-footer">
            <button type="button" class="btn btn-secondary" data-dismiss="modal">关闭</button>
            <button type="button" class="btn btn-primary">${options.confirmText}</button>
          </div>
        </div>
      </div>
    </div>
  `;

  $('body').append(template);

  $(`#${options.id}`).modal('show');

  $(`#${options.id} .btn-primary`).on('click', function () {
    if (typeof options.onConfirm === 'function') {
      options.onConfirm();
    }
    $(`#${options.id}`).modal('hide');
  });

  $(`#${options.id}`).on('hidden.bs.modal', function () {
    $(this).remove();
  });
}

上面这两个例子只是其中的一些常见的功能函数,实际上在开发中可以根据需求封装更加灵活的函数。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:jQuery常用知识点总结以及平时封装常用函数 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • JQuery异步提交表单与文件上传功能示例

    下面是详细讲解“JQuery异步提交表单与文件上传功能示例”的完整攻略。 什么是JQuery异步提交表单与文件上传功能? JQuery异步提交表单与文件上传功能是指利用JQuery框架实现无需刷新页面就能提交表单和上传文件的功能。一般情况下,表单和文件上传都是同步操作,即提交表单或上传文件后需要等待服务器的响应,并跳转到新的页面。但是,利用JQuery框架可…

    jquery 2023年5月27日
    00
  • 如何使用jQuery Mobile创建Bars图标

    使用 jQuery Mobile 创建 Bars 图标的步骤如下: 步骤一:导入 jQuery Mobile 在 HTML 页面中导入 jQuery Mobile 库文件: <head> <link rel="stylesheet" href="//code.jquery.com/mobile/1.4.5/jq…

    jquery 2023年5月12日
    00
  • jQWidgets jqxSlider tickSize属性

    当我们使用jQWidgets中的jqxSlider控件时,tickSize属性可以用于设置刻度线的间距。下面是详细讲解“jQWidgets jqxSlider tickSize属性”的完整攻略。 tickSize属性的语法 tickSize属性的语法如下: $("#slider").jqxSlider({ … ticksDistanc…

    jquery 2023年5月11日
    00
  • jQuery实现的placeholder效果完整实例

    下面是“jQuery实现的placeholder效果完整实例”的攻略,内容包含以下部分: 1.需求分析 首先我们需要明确这个效果的需求:当输入框为空时,显示类似于水印的提示文字,直到用户输入内容才消失。 然后我们要考虑如何实现这个效果,几个需要思考的问题: 文字应该显示在什么位置? 输入框为空或有内容应该如何判断? 字体颜色、大小、样式等如何确定? 消失动画…

    jquery 2023年5月28日
    00
  • jQWidgets jqxTreeGrid pagerButtonsCount属性

    以下是关于 jQWidgets jqxTreeGrid 组件中 pagerButtonsCount 属性的详细攻略。 jQWidgets jqxTreeGrid pagerButtonsCount 属性 jQWidgets jqxTreeGrid 的 pagerButtonsCount 属性用于设置 TreeGrid 控件页器中显示的按钮数。您可以使用此属性…

    jquery 2023年5月12日
    00
  • jQuery 如何在鼠标悬停时对div的宽度和高度进行动画处理

    如果想在鼠标悬停时对 div 元素的宽度和高度进行动画处理,可以通过以下步骤实现: 步骤一:引入jQuery库 如果没有引入jQuery库,需要先将它引入到项目中。方法有很多种,比如可以直接下载jQuery的js文件,也可以使用CDN等方式引入。 在本示例中,我们在html头部引入jQuery库: <head> <script src=&q…

    jquery 2023年5月12日
    00
  • jQuery实现的简单获取索引功能示例

    以下是“jQuery实现的简单获取索引功能示例”的完整攻略: 1. 了解jQuery jQuery是一种JavaScript库,通过使用jQuery可以简化JavaScript编程。与JavaScript相比,jQuery更符合Web开发的实际需求。 2. 版本选择 在使用jQuery之前,我们要选择需要的版本。如果希望使用最新版,可以从jQuery官网(h…

    jquery 2023年5月28日
    00
  • 如何使用jQuery实时计算单词

    以下是两个示例,演示如何使用jQuery实时计算单词: 示例1:使用keyup事件 以下是一个示例,演示如何使用keyup事件来实时计算单词: <!DOCTYPE html> <html> <head> <title>jQuery Keyup Event Example</title> <sc…

    jquery 2023年5月9日
    00
合作推广
合作推广
分享本页
返回顶部