jquery教程笔记

基础语法

基础语法: $(selector).action()

  • 美元符号定义 jQuery
  • 选择符(selector)"查询"和"查找" HTML 元素
  • jQuery 的 action() 执行对元素的操作

实现文档就绪后执行 jQuery 方法

$(document).ready(function(){
//代码
});

或者

$(function(){
//代码
});

jquery选择器

  • jquery选择器基于元素的ID、类、类型、属性、属性值选择HTML元素(和css的选择器类似)
  • 所有选择器以$()开头

元素选择器
$("p")选择所有<p>元素
id选择器
$("#test")选择所有id为test的元素
class选择器
$(".test")选择所有class为test的元素


jquery事件

  • 页面对不同访问者的响应叫做事件。
  • 事件处理程序指的是当 HTML 中发生某些事件时所调用的方法。
$("p").click(function(){
    $(this).hide();
});

其中,$("p")选定p元素,.click()指定点击事件,function()定义事件触发后执行的代码。

jquery效果

<p>2333</p>
<button id="hide">hide</button>
<button id="show">show</button>

$(document).ready(function(){
    $("#hide").click(function(){
        $("p").hide();
    });
    $("#show").click(function(){
        $("p").show();
    });
});

或者直接用toggle实现

$(document).ready(function(){
    $("button").click(function(){
        $("p").toggle();
    });
});
  • 显示/隐藏 show() hide() toggle()
  • 淡入/淡出 fadeIn() fadeOut() fadeToggle()
  • 渐变成给定的透明度 fadeTo("slow",0.7)
  • 往下/上滑出来 slideDown() slideUp slideToggle()

动画 animate()
$(selector).animate({params},speed,callback);

  • 必需的 params 参数定义形成动画的 CSS 属性。
  • 可选的 speed 参数规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。
  • 可选的 callback 参数是动画完成后所执行的函数名称。
$("button").click(function(){
    $("div").animate({
        left:'250px',
        opacity:'0.5',
        height:'150px',
        width:'200px'
    });
});
  • 也可以使用相对值来定义
    left:'+=150px'

  • 甚至可以把属性的动画值设置为 "show"、"hide" 或 "toggle":
    height:'toggle'

  • 队列功能,多个animate()调用下,根据队列顺序来执行

$("button").click(function(){
  var div=$("div");
  div.animate({height:'300px',opacity:'0.4'},"slow");
  div.animate({width:'300px',opacity:'0.8'},"slow");
  div.animate({height:'100px',opacity:'0.4'},"slow");
  div.animate({width:'100px',opacity:'0.8'},"slow");
});
  • 停止动画 stop()
$("button").click(function(){
  $("p").hide("slow",function(){
    alert("段落现在被隐藏了");
  });
});

在段落隐藏后,调用回调函数,弹出提示框
如果不用回调函数,直接写在下面的话,就是弹出框和隐藏一起

链接(chaining)允许我们在相同的元素上运行多条 jQuery 命令,一条接着另一条。
$("#p1").css("color","red").slideUp(2000).slideDown(2000);
"p1" 元素首先会变为红色,然后向上滑动,再然后向下滑动

DOM操作

  • 获取内容
<p>这是段落中的 <b>粗体</b> 文本。</p>

$("p").text()
//这是段落中的 粗体 文本。
$("p").html()
//这是段落中的 <b>粗体</b> 文本。
  • 获取输入内容 val()
<input type="text" id="test">

$("#test").val()
  • 获取属性的值 attr()
<a href="http://www.baidu.com" id="baidu">baidu</a>

$("#baidu").attr("href") 
//http://www.baidu.com
  • 设置内容
    text() - 设置或返回所选元素的文本内容
    html() - 设置或返回所选元素的内容(包括 HTML 标记)
    val() - 设置或返回表单字段的值
$("#btn1").click(function(){
    $("#test1").text("Hello world!");
});
$("#btn2").click(function(){
    $("#test2").html("<b>Hello world!</b>");
});
$("#btn3").click(function(){
    $("#test3").val("RUNOOB");
});

  • 设置属性
$("button").click(function(){
    $("#runoob").attr({
        "href" : "http://www.runoob.com/jquery",
        "title" : "jQuery 教程"
    });
});


  • 添加html元素
    append() - 在被选元素的结尾插入内容
    prepend() - 在被选元素的开头插入内容
    after() - 在被选元素之后插入内容
    before() - 在被选元素之前插入内容
$("p").append(" <b>追加文本</b>。");
$("p").prepend("在开头追加文本");
  • 删除元素
    remove()删除被选元素及其子元素,可以对北山元素进行过滤
    $("p").remove(".italic");
    empty()删除被选元素的子元素

  • 设置CSS
    添加class样式
    $("body div:first").addClass("important blue");
    删除class样式
    $("h1,h2,p").removeClass("blue");
    添加/删除轮流来
    $("h1,h2,p").toggleClass("blue");
  • css方法
    返回CSS属性值
$("p").css("background-color");
将返回**首个**匹配元素的background-color的值

设置CSS属性:

$("p").css("background-color","yellow");
将为**所有**匹配的元素设置background-color的值为yellow

设置多个CSS属性:
$("p").css({"background-color":"yellow","font-size":"200%"});


jquery尺寸

jquery尺寸

width()--content
height()--content
innerWidth()--content+padding
innerHeight()--content+padding
outerWidth()--content+padding+border
outerHeight()--content+padding+border


遍历

  • parent()
    返回被选元素的直接父元素。
    $("span").parent();
    返回每个<span>元素的直接父元素
  • parents()
    返回备选元素的所有祖先元素
    也可以使用参数来过滤对祖先元素的搜索
    $("span").parents("ul");
    只返回<span>元素的ul祖先
  • parentsUntil()
    返回介于两个元素之间的所有元素
    $("span").parentsUntil("div");
  • children()
    返回被选元素的所有直接子元素
  • find()
    返回被选元素的所有后代元素
  • siblings()
    返回被选元素的所有同胞元素
    同胞元素:拥有相同的父元素的元素们
  • next(), prev()
    返回被选元素的下一个/上一个同胞元素
  • nextAll(), prevAll()
    返回被选元素的所有的后面的/前面的同胞元素
  • nextUntil(), prevUntil()
    返回介于两个元素之间的所有同胞元素

-过滤

  • first()
    返回首个
  • last()
    返回最后一个
  • eq()
    返回被选元素的中带有指定索引号(从0开始)
    $("p").eq(1);取第2个p元素
  • filter()
    匹配某标准的元素会被返回
    $("p").filter(".url");返回带有类名url的所有p元素
  • not()
    返回不匹配标准的元素

jquery AJAX

  • load()
    load() 方法从服务器加载数据,并把返回的数据放入被选元素中。
    $(selector).load(URL,data,callback);
    必需的 URL 参数规定您希望加载的 URL。
    可选的 data 参数规定与请求一同发送的查询字符串键/值对集合。
    可选的 callback 参数是 load() 方法完成后所执行的函数名称
    把文件 "demo_test.txt" 的内容加载到指定的 <div> 元素中:
    $("#div1").load("demo_test.txt");
    把 "demo_test.txt" 文件中 id="p1" 的元素的内容,加载到指定的 <div> 元素中:
    $("#div1").load("demo_test.txt #p1");
    可选的 callback 参数规定当 load() 方法完成后所要允许的回调函数。回调函数可以设置不同的参数:
    responseTxt - 包含调用成功时的结果内容
    statusTXT - 包含调用的状态
    xhr - 包含 XMLHttpRequest 对象

  • $.get()
    $.get(URL,callback);
    必需的 URL 参数规定您希望请求的 URL。
    可选的 callback 参数是请求成功后所执行的函数名
$("button").click(function(){
  $.get("demo_test.php",function(data,status){
    alert("数据: " + data + "\n状态: " + status);
  });
});

从demo_test.php中取回数据,函数然后触发回调

  • $.post()
    $.post(URL,data,callback);
    必需的 URL 参数规定您希望请求的 URL。
    可选的 data 参数规定连同请求发送的数据。
    可选的 callback 参数是请求成功后所执行的函数名
$("button").click(function(){
    $.post("/try/ajax/demo_test_post.php",
    {
        name:"菜鸟教程",
        url:"http://www.runoob.com"
    },
        function(data,status){
        alert("数据: \n" + data + "\n状态: " + status);
    });
});
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,558评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,002评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,036评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,024评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,144评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,255评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,295评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,068评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,478评论 1 305
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,789评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,965评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,649评论 4 336
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,267评论 3 318
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,982评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,223评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,800评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,847评论 2 351

推荐阅读更多精彩内容