jQuery(二)

位置

1. 窗口偏移 offset([coordinates])
概述:获取匹配元素在当前视口的相对偏移。

  • top:距顶部像素值
  • left:距左侧像素值
var offset = $('p:last').offset(); // 获取段落的偏移
$("p:last").offset({top: 10, left: 30}); // 设置段落的偏移
CSS

1. 样式 css(name | prop[, val | fn])
概述:访问匹配元素的样式属性。

  • name:要访问的属性名称,或者多个 CSS 属性组成的数组
  • properties:要设置为样式属性的名/值对
  • name, value:属性名,属性值
  • name, function(index, name) {}:属性名,函数返回要设置的属性值
$("p").css("color"); // 取得第一个段落的 color 样式属性的值。
$("p").css("color","red"); // 将所有段落字体设为红色。
// 将所有段落的字体颜色设为红色并且背景为蓝色。
$("p").css({"color": "#ff0011", "background": "blue"});
页面载入

1. 就绪 ready(fn)
概述:当 DOM 载入就绪可以查询及操纵时绑定一个要执行的函数。

$(document).ready(function(){
  // 在这里写你的代码...
});
// 使用 $(document).ready() 的简写
$(function($) {
  // 你可以在这里继续使用$作为别名...
});

1. 绑定事件 on(events, [selector], [data], fn)
概述:在选择元素上绑定一个或多个事件的事件处理函数。

  • events:一个或多个用空格分隔的事件类型和可选的命名空间。
  • selector:一个选择器字符串用于过滤器的触发事件的选择器元素的后代。
  • data:当一个事件被触发时要传递 event.data 给事件处理函数。
  • fn:该事件被触发时执行的函数。
// 点击段落,弹框显示段落内容
$("p").on("click", function(){
  alert($(this).text());
});
// 点击段落,向事件触发函数传递参数
function myHandler(event) {
  alert(event.data.foo);
}
$("p").on("click", {foo: "bar"}, myHandler);
// 表单点击提交按钮时,阻止表单执行默认提交
$("form").on("submit", function(event) {
  event.preventDefault();
});

2. 移除事件 off(events, [selector], [fn])
概述:在选择元素上移除一个或多个事件的事件处理函数。

  • events:一个或多个空格分隔的事件类型和可选的命名空间
  • selector:一个最初传递到.on()事件处理程序附加的选择器。
  • fn:事件处理程序函数以前附加事件上
$("p").off(); // 移除段落的所有绑定事件

var foo = function () {// ...};
$("body").on("click", "p", foo);
// 移除段落添加的点击事件
$("body").off("click", "p", foo); 
事件切换

1. 悬浮 hover([over, ]out)
概述:一个模仿悬停事件(鼠标移动到一个对象上面及移出这个对象)的方法。

// 鼠标悬停的表格加上特定的类
$("td").hover(
  function () {
    $(this).addClass("hover");
  },
  function () {
    $(this).removeClass("hover");
  }
);

2. 切换 toggle([speed], [easing], [fn])
概述:用于绑定两个或多个事件处理器函数,以响应被选元素的轮流的 click 事件。

  • speed:隐藏/显示 效果的速度。默认是 "0"毫秒。可能的值:slow,normal,fast。
  • easing:用来指定切换效果,默认是"swing",可用参数"linear"。
  • fn:在动画完成时执行的函数,每个元素执行一次。
$('td).toggle(); // 对表格切换显示/隐藏
$("p").toggle("slow"); // 段落缓慢的切换显示状态
// 段落迅速切换显示状态,之后弹出一个对话框。
$("p").toggle("fast",function(){
  alert("Animation Done.");
});
事件

1. 失焦 blur([[data,] fn])
概述:当元素失去焦点时触发 blur 事件。

$(":text").blur(); // 触发所有文本框的 blur 事件
// 触发所有文本框的 blur 事件,打印输入值
$(":text").blur(function() {
  console.log($(this).val());
});

2. 单击 click([[data,] fn])
概述:触发每一个匹配元素的 click 事件。

$('button').click(); // 触发页面内所有按钮的点击事件
// 点击按钮隐藏所有段落
$('#btn1').click(function () { 
  $('p').hide(); 
});

3. 双击 dblclick([[data,] fn])
概述:当双击元素时,会发生 dblclick 事件。

$("button").dblclick(function () { 
  alert("Hello World!");
});

4. 聚焦 focus([[data,] fn])
概述:当元素获得焦点时,触发 focus 事件。

// 当页面加载后将 id 为 'login' 的元素设置焦点
$(document).ready(function(){
  $("#login").focus();
});
// 获得焦点时,打印的文本框的值
$(":text").focus(function(){
  console.log($(this).val());
});

5. 滚动 scroll([[data,] fn])
概述:当用户滚动指定的元素时,会发生 scroll 事件。

// 当页面滚动条变化时,进行提示
$(window).scroll(function(event) {
  console.log('正在滚动页面');
  console.log(event);
});

6. 提交 submit([[data,] fn])
概述:当提交表单时,会发生 submit 事件。

$("form:first").submit(); // 提交表单
// 阻止表单提交
$("form").submit(function (event) {
  return false;
});
文档处理

1. 追加 append(content | fn)
概述:向每个匹配的元素内部追加内容。

$("p").append("<b>Hello</b>"); // 向所有段落中追加一些 HTML 标记。

2. 之后插入 after(content | fn)
概述:在每个匹配的元素之后插入内容。

$("p").after("<b>Hello</b>"); // 在所有段落之后插入一些 HTML 标记代码。

3. 之前插入 before(content | fn)
概述:在每个匹配的元素之前插入内容。

$("p").before("<b>Hello</b>"); // 在所有段落之前插入一些 HTML 标记代码。

4. 清空 empty()
概述:删除匹配的元素集合中所有的子节点。

$("p").empty(); // 把所有段落的子元素(包括文本节点)删除
效果

1. 显示 show([speed, [easing], [fn]])
概述:显示隐藏的匹配元素。

  • speed:三种预定速度字符串(slow、normal、fast)或表示动画时长的毫秒数值(如:1000)
  • easing:用来指定切换效果,默认是"swing",可用参数"linear"
  • fn:在动画完成时执行的函数,每个元素执行一次。
$("p").show(); // 显示所有段落
$("p").show("slow"); // 用缓慢的动画将隐藏的段落显示出来

2. 隐藏 hide([speed, [easing], [fn]])
概述:隐藏显示的元素。

  • speed:三种预定速度字符串(slow、normal、fast)或表示动画时长的毫秒数值(如:1000)
  • easing:用来指定切换效果,默认是"swing",可用参数"linear"
  • fn:在动画完成时执行的函数,每个元素执行一次。
$("p").hide(); // 隐藏所有段落
$("p").hide("slow"); // 缓慢隐藏所有段落

3. 切换 toggle([speed], [easing], [fn])
概述:用于绑定两个或多个事件处理器函数,以响应被选元素的轮流的 click 事件。

  • speed:三种预定速度字符串(slow、normal、fast)或表示动画时长的毫秒数值(如:1000)
  • easing:用来指定切换效果,默认是"swing",可用参数"linear"
  • fn:在动画完成时执行的函数,每个元素执行一次。
$('button').click(function() {
  $('p').toggle();
}); // 点击按钮切换显示所有段落 

4. 上滑隐藏 slideUp([speed], [easing], [fn])
概述:通过高度变化(向上减小)来动态地隐藏所有匹配的元素。

$(".btn2").click(function(){
  $("p").slideDown();
}); // 点击按钮,段落隐藏

5. 下滑显示 slideDown([speed], [easing], [fn])
概述:通过高度变化(向下增大)来动态地显示所有匹配的元素。

$(".btn2").click(function(){
  $("p").slideDown();
}); // 点击按钮,段落显示

6. 切换显示 slideToggle([speed], [easing], [fn])
概述:通过高度变化来切换所有匹配元素的可见性。

$(".btn2").click(function(){
  $("p").slideDown();
}); // 点击按钮,切换段落滑动显示隐藏

7. 动画 animate(params, [speed], [easing], [fn])
概述:用于创建自定义动画的函数。

  • params:一组包含作为动画属性和终值的样式属性和及其值的集合。
  • speed:三种预定速度字符串(slow、normal、fast)或表示动画时长的毫秒数值(如:1000)
  • easing:用来指定切换效果,默认是"swing",可用参数"linear"
  • fn:在动画完成时执行的函数,每个元素执行一次。
// 让指定元素左右移动
$("#right").click(function(){
  $(".block").animate({left: '+50px'}, "slow");
});
$("#left").click(function(){
  $(".block").animate({left: '-50px'}, "slow");
});
// 点击按钮后 div 元素的几个不同属性一同变化
$("#go").click(function(){
  $("#block").animate({ 
    width: "90%",
    height: "100%", 
    fontSize: "10em", 
    borderWidth: 10
  }, 1000 );
});

8. 延迟 delay(duration[, queueName])
概述:设置一个延时来推迟执行队列中之后的项目。

// 在.slideUp() 和 .fadeIn()之间延时 800 毫秒。
$('#foo').slideUp(300).delay(800).fadeIn(400);
ajax

1. 异步请求 $.ajax(url, [settings])
概述:通过 HTTP 请求加载远程数据。

  • url:一个用来包含发送请求的 URL 字符串。
  • settings:请求设置。
// 保存数据到服务器,成功时显示信息。
$.ajax({
   type: "POST",
   url: "some.do",
   data: "name=John&location=Boston",
   success: function(msg){
     alert( "Data Saved: " + msg );
   }
});
// 获取服务器数据
$.ajax({
  type: "GET",
  url: "some.do",
  dataType: "json",
  success: function(result) {
    console.log(result);
  }
});

2. $.get(url, [data], [fn], [type])
概述:通过远程 HTTP GET 请求载入信息。

  • url:待载入页面的 URL 地址
  • data:待发送 Key/value 参数。
  • callback:载入成功时回调函数。
  • type:返回内容格式,xml, html, script, json, text, _default。
$.get("test.php"); // 请求 test.php 网页,忽略返回值。
// 请求 test.php 网页,传送 2 个参数,忽略返回值。
$.get("test.php", {name: "John", time: "2pm"});
// 显示 test.php 返回值。
$.get("test.php", function(data){
  alert("Data Loaded: " + data);
});

3. 序列化 serialize()
概述:序列表单内容为字符串。

$("#results").append( "<tt>" + $("form").serialize() + "</tt>" );

4. 序列化 serialzeArray()
概述:序列化表单元素,返回 JSON 数据结构数据。

// 取得表单内容并插入到网页中。
var fields = $("select, :radio").serializeArray();
jQuery.each( fields, function(i, field){
  $("#results").append(field.value + " ");
});
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值