jquery 学习 (二)
1)jquery对象和dom对象区别及相互转换
2)jquery和其他库冲突解决
3)css选择器和jquery选择器
3.1)基本选择器(id选择器、类选择器、元素选择器、*选择器、多个选择器以逗号分隔的集合选择器)
3.2)层次选择器(后代元素、子元素)。eg. $("ul li") 和 $("ul > li"),一个是所有后元素,一个是直接子元素。 $("ul").next("div") 下一个同辈 ,$("ul").nextall("div") 后面的所有同辈,slibings()所有同辈,不管前还是后。
3.3)过滤选择器
3.3.1)基本过滤选择器 :first :last :not(selector) :even :odd :eq(index) :gt(index) :lt(index) :header :animated :focus
3.3.2)内容过滤选择器 :contains(text) :empty :has(selector) :parent
3.3.3)可见性过滤选择器 :hidden :vidible
3.3.4)属性过滤选择器
3.3.5)子元素过滤选择器
3.3.6)表达对象属性过滤选择器
3.4)表单选择器
选择器插件:
1)moreselectors for query
2)basic path
4)jquery中的dom操作
4.1)查找dom节点(使用选择器)
4.2)查找属性节点 var $para = $("p");var p_txt = $para.attr("title“)获取p节点的title属性
4.3)创建节点
var $li_1 = $("<li></li>");
var $li_1 = $("<li></li>");
$("ul").append($li_1);
$("ul").append($li_2);
4.4)插入节点
append,appendto,prepend,prependto,after,insert after,befor,insert before
4.5)移动节点
4.6)删除节点 remove、detatch、empty
4.6)复制节点 clone
4.7)替换节点
4.8)包裹节点 wrap wrapall
4.9)属性操作 attr()获取属性,removeattr()删除属性
4.10)样式操作 $("p").attr("class","high") 设置p元素的class为high
4.11)追加样式(addclass)、移除样式(removeclass)、切换样式(toggle)、判断是否含有某个样式 .hasclass()
4.12)设置和获取html、文本和值html()方法获取html内容 text()方法获取文本内容 val()设置和获取元素的值,且能够使select、checkbox、radio选中
4.13)遍历节点 childeren(),next()pref()sibings()closet()parent()
4.14)css dom操作 读取和设置style对象的各种属性。 元素定位:offset() position()scrolltop()scrollleft()
5)jquery中事件和动画
$(document).ready(),dom就绪时就执行
$(window).load(function(){})。如果绑定在window或者元素上,则等待内容加载完毕才触发
5.1)事件绑定
bind():第一个参数事件类型、第二个参数可选,作为event.data属性值传递给事件对象的额外数据对象 第三个参数则用来绑定处理函数
$(function()){
$("#panel h5.head").bind("click",function(){
$(this).next().show();
}
}
点击“标题”连接,内容就展开
$(function()){
$("#panel h5.head").bind("click",function(){
var $content = $(this).next();
if ($content.is(":vidible")){
$content.hide();
}else{
$(this).next().show();
}
}
}
$(function()){
$("#panel h5.head").bind("mouseover",function(){
$(this).next().show();
}).bind("mouseout",function(){
$(this).next().hide();
}
}
可以简写绑定事件
$(function()){
$("#panel h5.head").mouseover(function(){
$(this).next().show();
}).mouseout(function(){
$(this).next().hide();
}
}
5.2)合成事件
hover() 当光标移动到元素上时,会触发指定的第一个函数(enter),移出时触发指定的第二个函数(leave)
toggle()用于模拟鼠标连续单击事件,第一个单击触发第一个函数,第二次触发第二个,如果有更多函数,则依次触发。也可以用来控制元素的可见状态
5.3)事件冒泡
按照dom的层级
对事件的作用范围进行控制
5.4)事件对象(event),停止事件冒泡(stoppropagation)
$('#content').bind("click",function(event)){
var txt = $('#msg').html()+"aaa";
$('#msg').html(txt);
event.stoppropagation();
}
5.5)阻止默认行为
网页中的元素都有自己的默认行为,例如单击链接后会跳转,单击提交按钮会表单提交。有时候需要阻止元素的默认行为。
$(funciton(){
$("#sub").bind("click",function(event){
var username = $("#username").val();
if (username==""){
$("#msg").html("<p>用户名不能为空</p>");
event.preventDefault();
}
}
}
想同时停止冒泡和阻止默认行为,可以在做了一个之后,return false
5.6)事件对象的属性
event.type获取事件类型
$("a").click(function(event){
alter(event.type);
return false;//阻止链接跳转
}
event.target 获取到触发事件的元素
event.pageX event.pageY 获取光标相对于页面的x坐标和y坐标
event.which 获取鼠标单击事件中的左、中、右键
5.7)移除事件 unbound
5.8)模拟操作
$("#btn").trigger("click")
触发自定义事件
$("#btn").bind("myclick",function(){
..
}
$("#btn").trigger("myclick");
传递数据
$("#btn").bind("myclick",function(event,message1,message2){
..
}
$("#btn").trigger("myclick",["参数1“,”参数2“]);
执行默认操作
$("input").trigger("focus"); 绑定并触发默认行为,即获取焦点
$("input").triggerHander("focus"); 仅绑定
5.9)绑定多个事件
$(function(){
$("div").bind("mouseover mouseout",function(){}
}
5.10)添加事件命名空间,便于管理,相同事件名称,不同命名空间执行方法
5.11)jquery 中的动画
show()和 hide()方法 改变元素高度宽度不透明度
$("element").hide() 等价于 $("element").css("display","none");
$("element").show("slow");
$("element").show(1000);
fadein()降低元素不透明度
fadeout()
slideup() slidedown() 改变元素的高度
animate(params,speed,callback)自定义动画方法,第一个参数:一个包含样式属性及值的映射 第二个参数:速度参数,可选 第三个参数:在动画完成时的函数,可选
动画------------------待续-----------------
6)ajax
不需要插件支持、优秀的用户体验(不用刷新页面)、提高web性能(按须发送,无需整个表单)、减轻服务器和带宽的负担
$.ajax():最底层的方法
load、$.get()、$.post() :第二层
$.getscript() 、$.getjson() 第三层
6.1)load(url,[.data],[.callback]) 载入远程html代码并插入dom中,第二个参数为发送至服务器的key/value数据
1)载入html文档
<input type="button" id="send" value="ajax get"/>
<div class="comment">已有评论</div>
<div id="resText"></div>
$(function(){
$("#send").click(function(){
$("#resText").load("test.html");
}
}
通过单击id为send的按钮来调用load()方法,然后将html的内容加载到id为restext的元素里
2)筛选载入的html文档
$("#resText").load("test.html .para");只需加载test.html页面中class为para的内容
3)传递方式
load()方法的传递方式根据参数data来自动指定,如果没有传递参数,则采用get方式传递,反之,则会自动转换为post方式
4)回调参数
$("#resText").load("test.html",function(responsetext,textstatus,xmlhttprequest)
请求返回的内容
请求状态 success、error、timeout、not modified
xmlhttprequest对象
load方法通常用来从web服务器上获取静态的数据文件
$.get()和$.post()方法是jquery中的全局函数,而在此之前讲的jquery方法都是对jquery对象操作的。
jquery 学习 (二)的更多相关文章
- Jquery 学习二
一.事件编程 1.基本事件(以方法形式存在的) 基本语法: 原生Javascript代码中的事件绑定方式: DOM对象.事件 = 事件的处理程序 jQuery代码中的事件绑定方式: jQuery对 ...
- jquery 学习(二) - 属性操作
html代码 <div class="n1" zdy="z1">AAA <p>1111111</p> <input t ...
- jQuery学习(二) 自定义扩展函数
jQuery函数调用写法很优雅,在项目开发过程中,有需要自定义函数经常被使用到,将这些函数放置到项目ExtTool.js中,为了编码方式的统一,也希望这些自定义函数与jQuery函数一致的调用方式.在 ...
- JQuery学习二(获取元素控件并控制)
$(’#id‘).+function; 例如: 1 <head> 2 <title>JQuery</title> 3 <script src="js ...
- jQuery学习(二)——使用JQ完成页面定时弹出广告
1.JQuery效果 2.步骤分析: 第一步:引入jQuery相关的文件 第二步:书写页面加载函数 第三步:在页面加载函数中,获取显示广告图片的元素. 第四步:设置定时操作(显示广告图片的函数) 第五 ...
- jQuery学习二
1.id选择器: // 4.如果页面中多个元素id相同,jquery只会获取第一个id的jquery对象 var jquery = $('#name'); alert(jquery.val()); v ...
- jQuery学习(二)
操作DOM对象: 修改文本: jQuery对象的text()和html()方法可以用来获取节点的文本内容和HTML文本.而当你给方法传入参数时,这两个方法可以被用于设置jQuery的文本内容. 还是以 ...
- JQuery学习二-字典操作
1. 数组中添加map var arr = []; var key = 'Jeremy'; var value = '!!!!' arr.push({ 'key': key, 'value': val ...
- jQuery学习-事件之绑定事件(二)
在上一篇<jQuery学习-事件之绑定事件(一)>我们了解了jQuery的add方法,今天我们来学习下dispatch方法: dispatch: function( event ) { ...
- jQuery学习之二 jQuery选择器
一.jQuery选择器是什么1.CSS选择器2.jQuery选择器 二.jQuery选择器的优势1.简洁的写法2.支持从CSS1到CSS3选择器3.完善的处理机制 传统js选择器假如要操作的元素不存 ...
随机推荐
- 高级特性(7)- 高级AWT
7.1 绘图操作流程7.2 形状7.3 区域7.4 笔划7.5 着色7.6 坐标变换7.7 剪切7.8 透明与组合7.9 绘图提示7.10 图像的读取器和写入器 7.10.1 获得图像文件类型的读取器 ...
- BNU Box of Bricks
http://www.bnuoj.com/bnuoj/problem_show.php?pid=1596 这个题一开始以为要求最少移动次数,把我吓到了,原来只要求最少移动几个方块就行了..这一下就变简 ...
- 浅谈PPM (Project Portfolio Management) - 1
前言: 本文以纯理论性的PPM解说为主,不会涉及到具体怎样实施,我会在以后介绍具体的PPM实施方案介绍. PPM,可能非常多人并不清楚甚至可能没听说过,这是一个近些年才流行起来的概念,是Project ...
- C#面向对象2 静态类、静态成员的理解
理解:静态成员属于类所有,为各个类的实例所公用,与实例无关,需要全局共享的属性或者方法定义成静态的 C#静态成员: 1.静态成员属于类所有,故用类名调用,非静态成员属于类的实例所有,用实例名调用 ...
- 为经典版eclipse增加web and JavaEE插件
链接地址:http://jingyan.baidu.com/article/f25ef2546cd0e2482d1b825d.html 为经典版eclipse增加web and JavaEE插件 百度 ...
- ios9 之后 配置百度地图出现的错误
链接地址:http://blog.csdn.net/u011303663/article/details/48596315 错误 ld: '/Users/xxx/Documents/xxx/Baidu ...
- WCF技术剖析之八:ClientBase<T>中对ChannelFactory<T>的缓存机制
原文:WCF技术剖析之八:ClientBase<T>中对ChannelFactory<T>的缓存机制 和传统的分布式远程调用一样,WCF的服务调用借助于服务代理(Service ...
- 云计算被视为继大型计算机、个人计算机、互联网之后的第4次IT产业革命,顺应了当前各行业整合计算资源和服务能力的要求(转)
云计算被视为继大型计算机.个人计算机.互联网之后的第4次IT产业革命,顺应了当前各行业整合计算资源和服务能力的要求,成为引领当今世界信息技术变革的主力军.越来越多的金融企业认识到只有与云计算结合,才能 ...
- ORA-01092 ORA-12432: LBAC error: zllegnp:OCIStmtExecute 故障一例
最近由于数据库hang住,无奈之下直接干掉了pmon进程,再次启动的时候收到了ORA-01092: ORACLE instance terminated. Disconnection forced以及 ...
- jquery-easyui界面皮肤设计
发现easy-ui 没有皮肤切换功能 正好工作要用就做了个 分享给大家 暂时做了绿色.橘黄.灰黑.蓝色.红色这5种颜色,大家也可以参照的多做几套更漂亮一点的! demo.rar (932.1 KB)