jQuery

Learn how Script Tags and Document Ready Work

  • 最流行的JavaScript库jQuery
<script>
  $(document).ready(function(){
    
  });
</script>

浏览器会运行 script 里所有的Javascript,包括jQuery。
The important thing to know is that code you put inside this function will run as soon as your browser has loaded your page.
在没有document ready function以前,你的代码会在HTML没有渲染完成就执行,这样会产生bug。


Target HTML Elements with Selectors Using jQuery

  • 所有jQuery方法都是由$开始的,通常称作为 美元符号,或者简称为bling。
  • jQuery通过选择器来选择一个元素,然后操作元素做些改变。
  • 举个例子,要让所有的按钮做弹回效果,只要把这段代码写在document ready function里面就可以了。

$("button").addClass("animated bounce");(确保已引入jQuery库和Animate.css库)
注:另外,single-quote selectors(单引号选择器)不会通过测试,一定要使用double-quote selectors(选择器)


Target Elements by Class Using jQuery

我们是怎么给所有的按钮做弹回效果的?

  1. $("button")来选中按钮
  2. .addClass("animated bounce")给按钮加CSS class。
    同理,我们来使用$(".well")来获取所有class为well的div元素,在well前加** . **就像之前CSS声明一样。
    然后使用jQuery的.addClass()方法添加2个class:animated、shake。

Target Elements by ID Using jQuery

  • 可以根据id属性来获取元素
    $("#target6").addClass("animated fadeOut")

Target the same element with multiple jQuery Selectors

现在你已经了解了3种选择器:元素选择器:$("button")、class选择器:$(".btn")、id选择器:$("#target1")。


Remove classes from an element with jQuery

  • 可以通过jQuery的addClass()方法给元素添加class,也可以通过jQueryremoveClass()方法去掉元素上的class。
    $("#target2").removeClass("btn-default");

Change the CSS of an Element Using jQuery

  • 可以通过jQuery来改变HTML元素的CSS样式。
  • jQuery有一个叫做.css()的方法能让你改变元素的CSS样式。
    $("#target1").css("color", "blue");
    这跟通常的CSS语法有点不同,这里CSS的属性和值是在引号内的,并且用逗号分开。

Disable an Element Using jQuery

  • 可以用jQuery改变除了CSS以外的属性。比如,你可以让按钮变不可选。
  • 当你把按钮设置成不可选以后,这会让按钮变灰并且不能点击。
  • jQuery有一个.prop()的方法让你来调整元素的属性.
    $("button").prop("disabled", true)

Change Text Inside an Element Using jQuery

  • jQuery不仅可以改变元素开始标记和结束标记间的文本,甚至可以改变元素标记本身。
  • jQuery的.html()方法可以添加HTML标签和文字到元素,而元素之前的内容都会被方法的内容所替换掉。
  • 通过em[emphasize]标签来重写和强调标题文本:
    $("h3").html("<em>jQuery Playground</em>");
  • jQuery 还有一个类似的方法叫.text(),它只能改变文本但不能修改标记。换句话说,这个方法只会把传进来的任何东西(包括标记)当成文本来显示。

Remove an Element Using jQuery

  • jQuery 有一个.remove() 的方法可以移除HTML元素:
    $("#target4").remove();()不需要设置参数

Use appendTo to Move Elements with jQuery

  • jQuery有一个appendTo()方法可以把选中的元素加到其他元素中。
  • 比如,你想让target4从我们的从right-well移到left-well,我们可以这样使用:
    $("#target4").appendTo("#left-well");

Clone an Element Using jQuery

除了移动元素,你还可以拷贝元素。简单理解:移动元素就是剪切,拷贝元素就是复制。

  • jQuery的clone()方法可以拷贝元素。
  • 把target2从left-well拷贝到right-well,可以这样写:
    $("#target2").clone().appendTo("#right-well");
  • 这里,两个jQuery方法合在一起使用了,这就叫方法链function chaining。

Target the Parent of an Element Using jQuery

  • 每个HTML元素根据继承属性都有父parent元素。
  • jQuery有一个方法叫parent(),它允许你访问指定元素的父元素:
    $("#left-well").parent().css("background-color", "blue")

Target the Children of an Element Using jQuery

每个人都继承了自己的父母的一些属性,譬如:DNA、相貌、血型、体型等等,HTML也不例外。许多HTML元素都有children(子元素),每个子元素都从父元素那里继承了一些属性。

  • jQuery有一个方法叫children(),它允许你访问指定元素的子元素:
    $("#left-well").children().css("color", "blue")

Target a Specific Child of an Element Using jQuery

你已经看到了当用jQuery选择器通过id属性来选取元素的时候是多么方便,但是你不能总是写这么整齐的id。
幸运的是,jQuery有一些另外的技巧可以达到同样的效果。

  • jQuery 用CSS选择器来选取元素,target:nth-child(n) CSS选择器允许你按照索引顺序(从1开始)选择目标元素的所有子元素。
    • 你可以给目标元素的第三个子元素添加bounce class。
      $(".target:nth-child(3)").addClass("animated bounce");

Target Even Numbered Elements Using jQuery

even-numbered 偶数的
odd-numbered 奇数的

  • 获取class为target且索引为奇数的所有元素,并给他们添加class:
    $(".target:odd").addClass("animated shake");
    记住,jQuery里的索引是从0开始的,也就是说::odd 选择第2、4、6个元素,因为target#2(索引为1),target#4(索引为3),target6(索引为5。

Use jQuery to Modify the Entire Page

  • 让整个body都有淡出效果(fadeOut):
    $("body").addClass("animated fadeOut");
  • 让我们做一些更为激动人心的事情,给body添加class animated 和hinge :
    $("body").addClass("animated hige");
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,386评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,142评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,704评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,702评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,716评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,573评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,314评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,230评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,680评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,873评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,991评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,706评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,329评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,910评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,038评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,158评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,941评论 2 355

推荐阅读更多精彩内容