taiyang2014

jQuery基础

jQuery 元素选择器
$(“p”)选取p元素
$(“p.intro")选取class=“intro”的<p>元素
$(“p#demo")选取id = “demo”的<p>元素
jQuery属性选择器
$(“[href]”)选取所有带有href属性的元素
$(“[href=‘#']")选取所有带有href值等于”#"的元素
$(“[href!=‘#']")选取所有带有href值不等于”#"的元素
$(“[href$=‘.jpg']”)选取所有href值以.jpg结尾的元素
jQueryCSS选择器
$("p").css("background-color", "red");
$(this)当前html元素
$(“ul li:first”)每个ul下的第一个li元素
$(“div #intor .head”)id=“into”的<div>元素中的所有的class=“head"元素
jQuery事件
jQuery 代码通常放到<head>部分的事件处理方法中
$(document).ready(function)将函数绑定到文档的就绪事件
$(selector).click(function)被选元素的点击事件
//服务器上可用
$(selector).dblclick(function)被选元素的双击事件
$(selector).focus(function)被选元素获得焦点事件
$(selector).mouseover(function)被选元素的悬停事件
 
jQuery效果
 
隐藏与显示
hide() 隐藏   show() 显示
$(selector).hide(speed,callback);
$(selector).show(speed,callback);
speed 速度 取值 slow | fast | 毫秒
callback 隐藏或者显示完后所执行的函数
jQuery toggle() 来切换hide() 和show()方法
 
淡入淡出
fadeIn()    fadeOut()  fadeToggle()  fadeTo()
$(selector).fadeIn(speed,callback);
$(selector).fadeTo(speed, opacity, callback);
fadeIn用于淡入已隐藏的元素
fadeIn用于淡出可见元素
fadeToggle切换淡入和淡出
fadeTo 渐变为给定的不透明度
   $("button").click(function(){
  $("#div1").fadeOut("s") //淡出
  $("#div1").fadeToggle(5);  //淡入淡出  
  $("#div1").fadeTo("slow", 0.4);
    });
滑动
slideUp( ) 向上滑动元素 slideDown( )向下滑动元素 slideToggle 切换
$(".uPAndDownShow").slideToggle();
动画
$(selector).animate({params},speed, callback)
 

获得内容 - text()、html() 以及 val()

三个简单实用的用于 DOM 操作的 jQuery 方法:
  • text() - 设置或返回所选元素的文本内容
  • html() - 设置或返回所选元素的内容(包括 HTML 标记)
  • val() - 设置或返回表单字段的值

设置内容 - text()、html() 以及 val()

我们将使用前一章中的三个相同的方法来设置内容:
  • 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("Dolly Duck");
});
 

设置属性 - attr()

jQuery attr() 方法也用于设置/改变属性值。
 

实例

$("button").click(function(){
  $("#w3s").attr({
    "href" : "http://www.w3school.com.cn/jquery",
    "title" : "W3School jQuery Tutorial"
  });
});
 

添加新的 HTML 内容

我们将学习用于添加新内容的四个 jQuery 方法:
  • append() - 在被选元素的结尾插入内容
  • prepend() - 在被选元素的开头插入内容
  • after() - 在被选元素之后插入内容
  • before() - 在被选元素之前插入内容
function appendText()
{
var txt1="<p>Text.</p>";               // 以 HTML 创建新元素
var txt2=$("<p></p>").text("Text.");   // 以 jQuery 创建新元素
var txt3=document.createElement("p");  // 以 DOM 创建新元素
txt3.innerHTML="Text.";
$("p").append(txt1,txt2,txt3);         // 追加新元素
}
 
$("p").prepend("Some prepended text.");
 $("img").before("<b>Before</b>");
 $("img").after("<i>After</i>");
 $("img").before("<b>Before</b>");
 
$(document).ready(function(){
  $("#btn1").click(function(){
    $("p").prepend("<b>Prepended text</b>. ");
  });
  $("#btn2").click(function(){
    $("ol").prepend("<li>Prepended item</li>");
  });
 
var txt1="<p>Text.</p>";              // 以 HTML 创建新元素
var txt2=$("<p></p>").text("Text.");  // 以 jQuery 创建新元素
var txt3=document.createElement("p");
txt3.innerHTML="Text.";               // 通过 DOM 来创建文本
$("body").append(txt1,txt2,txt3);        // 追加新元素
}
<p>This is a paragraph.</p>
<button onclick="appendText()">追加文本</button>
注意事项:
       (1)动态创建的新元素节点不会被自动添加到文档中,而是需要使用其他方法将其插入文档中。
       (2)当创建单个元素时,要注意闭合标签和使用标准的XHTML格式。
        例如创建一个<p> 元素,使用$("<p/>")或者("<p></p>"),但是不要使用$("<p>")或者大写的$("<P/>");

删除元素/内容

如需删除元素和内容,一般可使用以下两个 jQuery 方法:
  • remove() - 删除被选元素(及其子元素)
  • empty() - 从被选元素中删除子元素
删除 class="italic" 的所有 <p> 元素:
$("p").remove(".italic");
jQuery 提供多个处理尺寸的重要方法:
  • width()
  • height()
  • innerWidth()
  • innerHeight()
  • outerWidth()
  • outerHeight()

jQuery width() 和 height() 方法

width() 方法设置或返回元素的宽度(不包括内边距、边框或外边距)。
height() 方法设置或返回元素的高度(不包括内边距、边框或外边距)。

jQuery outerWidth() 和 outerHeight() 方法

outerWidth() 方法返回元素的宽度(包括内边距和边框)。
outerHeight() 方法返回元素的高度(包括内边距和边框)。

向上遍历 DOM 树

这些 jQuery 方法很有用,它们用于向上遍历 DOM 树:
  • parent()
  • parents()
  • parentsUntil()
  • 返回每个 <span> 元素的的直接父元素:
  • $(document).ready(function(){
      $("span").parent();
    });
  • 返回所有 <span> 元素的所有祖先:
  • $(document).ready(function(){
      $("span").parents("ul");
    });
  • jQuery parentsUntil() 方法
    parentsUntil() 方法返回介于两个给定元素之间的所有祖先元素。
    下面的例子返回介于 <span> 与 <div> 元素之间的所有祖先元素:
    实例
    $(document).ready(function(){
      $("span").parentsUntil("div");
    });
  • children() 方法返回被选元素的所有直接子元素。
 
$(document).ready(function(){
  $("div").children();
});
 
返回类名为 "1" 的所有 <p> 元素,并且它们是 <div> 的直接子元素:
$(document).ready(function(){
  $("div").children("p.1");
});

jQuery find() 方法

find() 方法返回被选元素的后代元素,一路向下直到最后一个后代。
返回属于 <div> 后代的所有 <span> 元素:
$(document).ready(function(){
  $("div").find("span");
});
 
返回 <div> 的所有后代:
$(document).ready(function(){
  $("div").find("*");
});'

在 DOM 树中水平遍历

有许多有用的方法让我们在 DOM 树进行水平遍历:
    • siblings()
    • next()
    • nextAll()
    • nextUntil()
    • prev()
    • prevAll()
    • prevUntil()
    • jQuery siblings() 方法
      siblings() 方法返回被选元素的所有同胞元素。
      返回 <h2> 的所有同胞元素:
      $(document).ready(function(){
        $("h2").siblings();
      });
    • 返回属于 <h2> 的同胞元素的所有 <p> 元素:
    • $(document).ready(function(){
        $("h2").siblings("p");
      });
    • jQuery next() 方法
      next() 方法返回被选元素的下一个同胞元素。
      该方法只返回一个元素。
      返回 <h2> 的下一个同胞元素:
      $(document).ready(function(){
        $("h2").next();
      });
    • jQuery nextAll() 方法
      nextAll() 方法返回被选元素的所有跟随的同胞元素。
      返回 <h2> 的所有跟随的同胞元素:
      $(document).ready(function(){
        $("h2").nextAll();
      });
    • jQuery nextUntil() 方法
      nextUntil() 方法返回介于两个给定参数之间的所有跟随的同胞元素。
      返回介于 <h2> 与 <h6> 元素之间的所有同胞元素:
      $(document).ready(function(){
        $("h2").nextUntil("h6");
      });
    • jQuery prev(), prevAll() & prevUntil() 方法
      prev(), prevAll() 以及 prevUntil() 方法的工作方式与上面的方法类似,只不过方向相反而已:它们返回的是前面的同胞元素(在 DOM 树中沿着同胞元素向后遍历,而不是向前)。
    • 缩写搜索元素的范围
      三个最基本的过滤方法是:first(), last() 和 eq(),
    • 选取首个 <div> 元素内部的第一个 <p> 元素:
      $(document).ready(function(){
        $("div p").first();
      });
    • 择最后一个 <div> 元素中的最后一个 <p> 元素:
    • $(document).ready(function(){
        $("div p").last();
      });
    • jQuery eq() 方法
      eq() 方法返回被选元素中带有指定索引号的元素。
      索引号从 0 开始,因此首个元素的索引号是 0 而不是 1。下面的例子选取第二个 <p> 元素(索引号 1):
      $(document).ready(function(){
        $("p").eq(1);
      });

      jQuery filter() 方法
      filter() 方法允许您规定一个标准。不匹配这个标准的元素会被从集合中删除,匹配的元素会被返回。
      返回带有类名 "intro" 的所有 <p> 元素:

      $(document).ready(function(){
      $("p").filter(".intro");
      });

      jQuery not() 方法
      not() 方法返回不匹配标准的所有元素。
      提示:not() 方法与 filter() 相反。
      返回不带有类名 "intro" 的所有 <p> 元素:
      $(document).ready(function(){
        $("p").not(".intro");
      });

posted on 2017-08-21 14:26  taiyang2014  阅读(112)  评论(0编辑  收藏  举报

导航