jQuery 互动版

什么是jQuery
jQuery 搭建安装开发环境 jQuery 选取html的语法形式 第一个示例程序 hello world 轻量级的jQuery有哪些优势 教程小节
jQuery 选择器的使用
什么是jQuery选择器 jQuery基础选择器 jQuery层次选择器 简单过滤选择器 内容过滤选择器 可见性过滤选择器 属性过滤选择器 子元素过滤选择器 表单对象属性过滤选择器 表单选择器
jQuery 操作DOM元素
操作DOM元素属性 操作DOM元素内容 操作DOM元素样式 向DOM元素内追加内容 复制DOM元素 DOM元素的替换 包裹DOM元素 遍历DOM元素 删除DOM元素
jQuery 事件和应用
页面加载事件ready() 使用bind()方法绑定事件 使用hover()和toggle()切换事件 使用unbind()移除和解除绑定事件 one()一次性事件处理器函数 通过trigger()手动触发指定事件 元素获得focus()或失去blur()焦点事件 元素改变事件change()
jQuery 动画与特效
动画与特效中的显示show和隐藏hide 动画与特效的淡入淡出效果 动画与特效的滑动效果 animate()方法来自定义动画效果 stop()方法来停止动画或者效果
jQuery Ajax的使用
什么是AJAX AJAX方法load()从服务器加载数据 用getJSON()方法加载JSON格式数据 使用getScript()异步加载js文件并执行 以GET方式从服务器获取数据 以POST方式从服务器发送数据 Ajax序列化表单的值 用Ajax加载服务器数据
jQuery 自定义插件
自定义插件的准备工作 维护自定义插件的链接性 用插件构造一个有可折叠面板的页面 自定义你的jquery插件
在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器

自定义你的插件

对于每个 Accordion,你以使用 jQuery 的 children 方法访问相关定义的标题,返回一个数组或 dt 元素。应用一个 click 事件到 dt 元素,然后一个名为 reset 方法应用到每个 dt。accordion 首次加载时,该 reset 方法会折叠所有 dd 元素。单击 dt 元素或者标题栏时,click 事件会触发一个名为 onClick 的自定义方法。自定义 onClick 方法用于查找 accordion 中的所有 dt 元素。它调用一个自定义 hide 方法,该方法通过使用 next 方法找到紧挨着 dt 元素的 dd 元素,隐藏每个相关的 dd 元素,通过使用 next 方法找到紧挨着 dt 元素的 dd 元素,然后向上滑动激活它。

所有 dd 元素被隐藏后,使用 slideDown 方法,就可以看见与单击过的 dt 元素相关的 dd 元素,并创建一个放大和收缩动画,如清单 8 所示。onClick 方法的最后一行代码是 return false,确保任何被点击的主题栏没有显现出其一般行为。例如,如果您使用一个 anchor 元素作为标题栏,您可能想要执行 return false,这样就不会将用户定向到另一个页面或现有页面的一部分。

代码详细:

(function($) {
  $.fn.accordion = function(options) {
    return this.each(function() {
      var dts = $(this).children('dt');
      dts.click(onClick);
      dts.each(reset);
    });

    function onClick() {
      $(this).siblings('dt').each(hide);
      $(this).next().slideDown('fast');
      return false;
    }

    function hide() {
      $(this).next().slideUp('fast');
    }

    function reset() {
      $(this).next().hide();
    }
  }
})(jQuery);

之后就是在html页面中引用定义好的jQuery插件了。当然还在js代码中调用。

$(function(){
    $('dl#my-accordion').accordion();
})
任务:把上面jQuery中的操作在代码框中重现。