jQuery常用API

本文深入探讨了jQuery库中的常用API,包括选择器、基本操作、内容选择器、表单选择器、DOM操作、属性操作、样式操作、事件处理、动画效果以及Ajax请求。通过丰富的代码示例,详细解析了如何使用jQuery进行网页交互和数据处理,帮助开发者提升网页开发效率。
摘要由CSDN通过智能技术生成

jQuery常用API


前言

有前面的基础,敲就完事了.


一、代码示例

  //常用选择器
  $("#div1")
  $("span")
  $("p span")//后代节点
  $("p>span")//子代节点
  $(".red")
  $("*")
  $("div,span,p.cls")//选择所有div,span及class为p的一级元素

  //基本选择器
  $("span:first")
  $("span:last")
  $("td:even")//偶数节点
  $("td:odd")//奇数节点
  $("td:eq(1)")//索引节点
  $("td:gt(0)")//大于索引节点
  $("td:lt(2)")//小于索引节点
  $(":focus")//获取焦点节点
  $(":animated")//动画节点

  // 内容选择器:
  $("div:contains('hello')")//包含hello文本的节点
  $("td:empty")//空节点
  $("div:has(p)")//含有选择器匹配的节点
  $("td:parent")//含有子节点或文本的节点,与empty相反

  //表单选择器:
  $("input:checked")//掺选中节点
  $("select option:selected")//所有选中的option节点
  $(":input")//匹配所有input节点
  $(":text")//所有文本框
  $(":password")//所有密码框
  $(":radio")//所有单选按钮
  $(":checkbox")//所有复选框
  $(":submit")//所有提交按钮
  $(":reset")//所有重置按键
  $(":button")//所有button按钮
  $(":file")//所有文件域

  //查找
  $("p").eq(0)
  $("li").first()
  $("li").last()
  $(this).hasClass("node")//节点是否有特定类,返回布尔值
  $("li").has('ul')
  $("div").children()//div第一层的每个子节点
  $("div").find("span")//查找div下所有span节点
  $("p").next()//p节点后兄弟节点
  $("p").nextAll()//p节点后所有兄弟节点
  $("#node").nextUntil("$node2")//#node节点与#node2节点之间所有兄弟节点
  $("p").prev()//p节点前兄弟节点
  $("p").prevAll()
  $("#node").prevUntil(#node2)
  $("p").parent()//所有p节点的父节点
  $("p").parents()//所有p节点的所有父节点(会遍历所有上级直至body,html)
  $("#node").parentsUntil("#node2")
  $("div").siblings()//所有兄弟节点

  //属性操作:
  $("img").attr("src");
  $("img").attr("src","node.jpg");//设置所有图片src=node.jpg
  $("img").removeAttr("src");
  $("input[type='checkbox']").prop("checked",true)//选中复选框
  $("input[type='checkbox']").prop("checked",false)
  $("img").removeProp("src");

  //样式操作:
  $("p").addClass("selected");
  $("p").removeClass("selected");
  $("p").toggleClass("selected");//存在就删除,不存在就添加

  //内容操作:
  $("p").html();//返回p节点html内容
  $("p").html("Hello<b>hello</b>");//设置html内容
  $("p").text();
  $("p").text("Hello");
  $("input").val(); //获取文本框文本值
  $("input").val("hello");

  //css操作:
  $("p").css("color");
  $("p").css("color","red");
  $("p").css({"color":"red","background":"yellow"});

  //定位
  $("p").offset()//节点相对当前视口的偏移
  $("p").offset().top
  $("p").offset().left
  $("p").position()//节点相对于父节点的偏移,相当于offsetLeft,offsetTop
  $(window).scrollTop()
  $(window).scrollLeft()
  $(window).scrollTop("25")

  //尺寸
  $("p").height();
  $("p").width();
  $("p:first").innerHeight()//第一个P节点的内部高度,不包括border和margin
  $("p:first").innerWidth()
  $("p:first").outerHeight()//包括border
  $("p:first").outerWidth()
  $("p:first").outerHeight(true)//height+border+margin

  //Dom内部插入
  $("p").append("<b>hello</b>");//p节点内部后面插入
  $("p").appendTo("div")//p节点追加到div内后
  $("p").prepend("<b>Hello</b>");//p节点内部前面插入
  $("p").appendTo("div")//p节点追加到div内部前面

  //Dom外部插入
  $("p").after("<b>hello</b>");//p节点同级后插入
  $("p").before("<b>hello</b>");//p节点同级前插入
  $("p").insertAfter("#node");//p节点插入到#node的后面
  $("p").insertBefore("$node")

  //Dom替换
  $("p").replaceWith("<b>Hello</b>");//所有的p节点替换为html内容
  $("<b>hello</b>").replaceAll("p");//两个相反,一个换内容,一个换元素

  //Dom删除
  $("p").empty();//删除p节点内所有子节点
  $("p").remove();//删除整个p节点
  $("p").detach();//与remove类似,不同的是会保留绑定事件与附加数据(样式等)

  //Dom复制
  $("p").clone()//复制节点并选中副本
  $("p").clone(true)//是否复制

  //Dom加载完成
  $(document).ready(function(){
    //代码...
  });
  $(function(){
    //代码...
  });

  //绑定事件
  $("p").bind("click",function(){
    console.log("haha");
  });
  $("#div").bind({
    "mouseover":function(){
      $("#div").parent().removeClass("hide");//删除#div父节点的class = hide
    },"mouseout":function(){
      $("#div").parent().addClass("hide");
    }
  });//绑定多个事件
  $("#div").on("mouseover mouseout",function(){
    $("#div").parent().toggleClass("hide");
  });//与上面是相同效果
  $("p").one("click",function(){});//只执行一次
  $("p").unbind("click");//解除绑定事件
  $("p").delegate("click",function(){
    //代码...
  });//临时绑定
  $("p").undelegate();//删除
  $("p").undelegate("click")//只删除由delegate绑定的click事件

  $("p").click(function(){});
  $("p").dblclick(function(){});
  $("input[type=text]").focus(function(){});
  $("input[type=text]").blur(function(){});
  $("button").mouseup();//松开
  $("button").mousedown();//按下
  $("button").mousemove();//移动
  $("button").mouseover();//放上去
  $("button").mouseout();//拿下来
  $(window).keydown();
  $(window).keypress();
  $(window).keyup();
  $(window).scroll();
  $(window).resize();//调整浏览器大小触发事件
  $("input[type=text]").change();//文本框内容改变时
  $("input").select();
  $("form").submit();
  $(window).unload();//用户离开页面时

  //事件对象
  $("p").click(function(event){
    console.log(event.type);
  });
  // event的属性方法:
  event.pageX
  event.type
  event.pageY
  event.which
  event.data
  event.target
  event.data //传递事件处理函数的附加数据
  $("p").on("click","{name:'laowang'}",function(){
    console.log(event.data.name);
  });
  event.preventDefault()
  event.stopPropagation()

  //动态事件绑定:
  $("p").on("click","span",function(){});//当增加span时仍有效

  //动画效果:
  $("p").show()//显示隐藏
  $("p").show("slow");//$("p").show(1000)  $("p").show(1000,function(){});
  $("p").hide();
  $("p").toggle();
  $("p").slideDown("1000");//滑下
  $("p").slideUp("slow");//滑上
  $("p").slideToggle();
  $("p").fadeIn();//淡入
  $("p").fadeOut("fast");//淡出
  $("p").fadeToggle();
  $("p").fadeTo("slow",0.5);//慢速调整透明度到0.5
  $("p").animate({"css属性"},"speed",callback(){});
  $("p").stop()//第一个参数:是否清空当前动画序列(所有的动画);第二个参数:是否立即完成当前动画
  $("p").stop(false,false)//立即停止当前动画,后面的序列继续完成(到最后)然后结束
  $("p").stop(false,true)//立即完成当前动画(到最后),后面的序列继续完成(到最后)然后结束
  $("p").stop(true,true)//立即完成当前动画(到最后),后面的动画被清除(不执行了)
  $("p").stop(true,false)//立即停止当前动画,后面的动画也不执行了

  //工具方法
  $("form").serialize() //表格内容为字符串
  $("select,:radio").serializeArray();//返回json数据
  $.trim() //去除字符串两端空格
  $.each() //遍历一个数组或对象
  $.inArray()//返回一个值在数组中索引位置,不存在返回-1
  $.grep() //返回数组中符合标准的节点
  $.extend({a:1,b:2},{b:3,c:4},{c:5,d:6});//合并多个对象到第一个对象
  $.makeArray()//对象转化为数组
  $.type()//判断对象类型
  $.isArray()
  $.isEmptyObject()//判断对象是否为空(不含有任何属性)
  $.isFunction()
  $.isPlainObject()//判断是否为{}或new出来的对象
  $.support()//判断浏览器是否支持某个特性

  //Ajax
  //保存数据到服务器,成功返回信息
  $.ajax({
    type:"POST";
    url:"xxx.php";
    data:"name=laowang&pwd=123";
    success:function(msg){
      console.log(msg);
    }
  });
  $.get("xx.php",{name:"laowang",pwd:"123"});//get请求数据,忽略返回值
  $.post("xx.php",{name:"laowang",pwd:"123"},function(resText){
    console.log(resText);
  });
  $("#feeds").load("feeds.html");//加载文件内容
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值