var x = 42;
console.log( x );
var message = (function( x ){
return function() {
console.log( "x is " + x );
}
})( x );
message();
x = 12;
console.log( x );
message();
----------------------p47 自执行匿名函数 ()
//对象 p42
$.extend(obj1,obj2,obj3)//合并
$.extend({},obj)//复制
$.extend(true,{},obj)//深度复制
//数组
$.makeArray(obj);//对象转换数组
$.inArray();//指定数组是否存在某个值;不存在返回-1
$.unique();//从DOM元素的素组中移除重复元素
obj1.concat(obj2)//obj2数组连接到obj1数组
var numArray = [1,2,3,4];
$.each( numArray, function( index, value ){
value = value * 2;
console.log( "index is:"+index+" new value is:" + value );
});
//遍历each与map类似
$.each(数组,回调函数);//回调函数第一个参数为索引,第二位元素值
$.map(数组,回调函数);//回调函数第一个参数为元素值,第二位索引
//$.queue() 队列先进先出,$.queue(function(){$(this).push(obj);
$(this).pop(obj);
$(this).clearQueue();//清除所有函数
$(this).dequeue();//移除一个函数并执行
})
//$.contains(容器节点,目标节点)//容器节点是否是目标节点的子节点
//$.now();当前时间==(new Date).getTime()
//if($.support.ajax){}//检查浏览器是否支持ajax请求,.support()
//eval()执行任意js代码,eval()执行的局部上下文
//$.globalEval()执行全局上下文
//链式操作 p72
//属性选择器 p85
$("[attributeName='string2match']");
$("[attributeName^='str']");//匹配str开头所有元素
$("[attributeName$='str']");//匹配str结尾所有元素
$("[attributeName*='str']");//包含str所有元素
$("[attributeName~='str']");//包含str所有元素(包含空格隔开的,如:xxx
str)
//复式属性选择器
var n = $("form[name$='Office1']form[name^='admin']").length;
//位置选择器
$("li:even") //返回偶数成员值,0也是偶数
li:odd //奇数
li:first //第一个元素
li:last //最后一个
li:eq(3) //返回第四个
li:gt(2)//返回匹配集合索引大于2的所有元素
li:lt(3)//小于3
//过滤选择器
:animated //选择当前正在执行动画所有元素
:header //选择所有标题元素 如:h1,h2,h3
:not //选择与选择器不匹配元素
//过滤表单元素
$(function(){
var n1 = $("input").length;//xuaninput的所有元素
var n2 = $(":input").length;//包含dom
(input,textarea,select,button)所有元素
var n3 = $("form > *").length;//表单内所有元素
var n4 = $(":text").length;//属性为text所有
var n5 = $("input[type='text']").length;//属性为text所有
console.log(n1 + ","+ n2 +","+ n3 + "," + n4 + "," + n5);
});
</script>
<form name="" method="post">
<input type="text" />
<input type="text" />
<input type="text" />
<button>
</form>
<button>
//可见性过滤器
jquery根据元素offsetWidth\offsetHeight属性判断一个元素是否可见
如果这个2个属性都为0,jquery认为该元素是隐藏,
元素样式为display:block,display:none jquery检测这些
$(function(){
var numInv = $(":text:hidden").length; //所有隐藏
var numVis = $(":text:visible").length;//所有可见
console.log(numInv);//1
console.log(numVis);//1
});
<form name="" method="post">
<input type="text" name="text1" style="display:none;"/>
<input type="text" name="text2" style="offsetWidth:0;
offsetHeight:0;"/>
<input type="text" name="text3" style="display:block;/>
</form>
//内容过滤器
:contains()
$(function(){
var jennies = $("p:contains('jenny')").length;
console.log(jennies); // returns 2
});
<p>jenny smith</p>
<p>jennyjones</p>
<p>jim bob</p>
//:has()
$(function(){
var jennies = $("p:contains('jenny')").length;
console.log(jennies); // returns 2
var hasdoemo = $("div:has('p')").attr("id");//在该元素的后代元素
中至少包含一个与指定的选择器匹配的元素
console.log(hasdoemo); //lt
});
<div id="gt">
<p>jenny smith</p>
<p>jennyjones</p>
<p>jim bob</p>
</div>
<div id="lt">
afdfd</div>
//不包含任何内容 :empty()
$(function(){
var nothing = $("p:empty").length;
console.log(nothing); //returns 1
});
div>
<p></p>
<p>something here</p>
</div>
//:parent() 选择具有子元素的元素
$(function(){
console.log($("div:parent").attr("id"));//gt
});
<div id="lt">afdfd</div>
<div id="gt">
<p>jenny smith</p>
<p>jennyjones</p>
<p>jim bob</p>
</div>
////根据关系进行过滤
<script>
$(function(){
console.log( $("div span:first-child") ) // 选择每个父元素第一个
//[span#turkey, span#bear, span#martian]
console.log( $("div span:last-child") ) // 选择每个父元素最后
一个
//[span#hawk, span#horse, span#martian]
console.log( $("div span:only-child") ) // 选择每个父元素只有
唯一
//[span#martian]
console.log( $("div span:nth-child(2)") ) //每个父元素第n个
//[span#chicken, span#rabbit]
console.log( $("div span:nth-child(2n+1)") ) //n=0.....n
//[span#turkey, span#parrot, span#hawk, span#bear, span#fox, span#horse,
span#martian]
console.log( $("div span:nth-child(even)") )
//[span#chicken, span#pigeon, span#rabbit, span#monkey]
});
</script>
</head>
<body>
<div>
<span id="turkey">Turkey</span>
<span id="chicken">Chicken</span>
<span id="parrot">Parrot</span>
<span id="pigeon">Pigeon</span>
<span id="hawk">Hawk</span>
</div>
<div>
<span id="bear">bear</span>
<span id="rabbit">rabbit</span>
<span id="fox">fox</span>
<span id="monkey">monkey</span>
<span id="horse">horse</span>
</div>
<div>
<span id="martian">martian</span>
</div>
//用户自定义选择器
<script>
$(function(){
// Define custom filter by extending $.expr[":"]
$.expr[":"].greenbg = function(element) {
return $(element).css("background-color") === "green";
};
var n = $(":greenbg").length;
console.log("There are " + n + " green divs");
});
</script>
</head>
<body>
<div style="width:10; height:10; background-color:green;"></div>
<div style="width:10; height:10; background-color:black;"></div>
<div style="width:10; height:10; background-color:blue;"></div>
</body>
//事件
//bind(),unbind(),
live(),die();delegate(),undelegate()//还不存在的一个元素绑定一个事件处理
程序 p121
bind与live区别,运行时生成使用live
//live与delegate区别是,delegate可以链接调用
//.one() 时间处理一次
//.trigger(”click“) 匹配所有click事件并行执行
//.triggerHandler("click") 匹配click事件执行第一个匹配事件处理并不冒泡
//.on("func"),.off("func") 完全可以替代之前的live,bind,delegate方法
//p154 再研究 modernizr datalink
//$.offset() //元素相对文档定位, 返回css对象 再研究 p159
//$.position() //元素相对父容器元素定位
//visibility 与 display 区别 visibility:hidden 存在文档流中,display:none
不存在
//e.stopPropagation();//停止事件
//slideUp,slideDown("fast","xx",回调);//p162
$(function(){
$( "div#message" ).click( function(e){
e.stopPropagation();
console.log( $("div#message").width()+" "+
$("div#message").height());
// $( "div#message").slideUp( 'fast' );
$( "div#message").fadeIn();
});
$( document ).click(function(){
// $( "div#message" ).slideDown( 'fast' );
$( "div#message" ).fadeOut();
});
});
////////
$(function(){
$( document ).click( function(event){
$( "div#box" ).animate({
left: '+=100px' //注意
}, 200);
});
});
分享到:
相关推荐
jQuery基础教程笔记jQuery基础教程笔记jQuery基础教程笔记jQuery基础教程笔记
《jQuery基础自学笔记》 jQuery 是一款非常流行的 JavaScript 库,由 John Resig 在2006年创建,它的出现极大地简化了JavaScript的DOM操作、事件处理、动画设计以及Ajax交互。jQuery 的设计理念是“Write Less, Do ...
jquery基础笔记 基本上把需要用到的方法都概括了 比较全
jQuery 是一个广泛使用的 JavaScript 库,它简化了DOM操作、事件处理、动画制作以及Ajax交互。对于熟悉JavaScript的...掌握jQuery基础,对于Web开发来说是一项重要的技能,能帮助开发者更快地实现页面交互和动态效果。
这份"js&jquery学习笔记"应该包含对这些概念的详细解释,以及示例代码和练习,帮助读者理解和掌握这两种技术。对于初学者来说,这是一份宝贵的资源,能够快速上手JavaScript和jQuery,提升Web开发技能。
jQuery基础笔记-1 jQuery概述 ----------- jQuery是一个JavaScript库,提供了简洁、快速、轻量级的解决方案,用于简化网页开发。它的主要特点是链式调用、隐式迭代、选择器等,可以帮助开发者快速构建动态网页。 ...
【JavaScript基础】 ...这些笔记将帮助初学者理解JavaScript、jQuery和CSS的基础知识,通过学习和实践,可以快速掌握Web前端开发的基本技能。在实际项目中,可以结合这三者,创建交互性强、视觉效果丰富的网页。
总的来说,《韩顺平jQuery学习笔记及练习》这套资料全面覆盖了jQuery的基础知识和实践技巧,不仅理论详尽,而且实战性强,是你提升jQuery技能的得力助手。通过深入学习和实践,你将能够自如地运用jQuery创建出功能...
这里,我们有针对这两个主题的学习笔记和参考资料,包括JavaScript培训、jQuery API、JavaScript基础、函数详解以及jQuery使用手册等内容。让我们逐一探讨这些知识点。 首先,`JavaScript培训.zip`可能包含的是对...
### jQuery完全笔记知识点概述 #### 1. jQuery概述 jQuery是一个快速、小型且功能丰富的JavaScript库,它简化了HTML文档遍历、事件处理、动画和Ajax交互。通过使用jQuery,可以更方便地在网页中操作文档对象、选择...
以上是jQuery基础操作的简要概述,实际应用中,jQuery还提供了许多高级功能,如动画效果、Ajax请求、插件扩展等。学习jQuery,不仅可以提高开发效率,还能让你的网页交互更加流畅、美观。在学习过程中,结合实践不断...
**jQuery学习笔记(一)** 在深入探讨jQuery之前,我们首先要理解什么是jQuery。jQuery是一个高效、易用且功能丰富的JavaScript库,它简化了HTML文档遍历、事件处理、动画制作和Ajax交互等任务。由John Resig在2006...
### JQuery自学学习笔记 #### 一、JQuery简介与基本语法 JQuery 是一款轻量级的 JavaScript 库,极大地简化了 HTML 元素的选择、操作以及事件处理等任务。它提供了一种更加简单的方式来进行网页开发,使得开发者...
Rebecca Murphey的《jQuery基础教程》是一本优秀的入门教材,已被jQuery官方认可。通过深入学习和实践,开发者可以快速掌握jQuery的主要功能,即使不涉及Ajax和插件开发,也能在网页开发中游刃有余。
【笔记本样式jQuery滑块】是一种基于JavaScript库jQuery的动态展示内容的组件,它以其独特的设计,模拟了笔记本翻页的效果,使得网页上的图像或视频展示更加生动有趣。这个滑块的特点在于它结合了索引按钮,用户可以...
一、jQuery基础 1. 包裹函数:jQuery对象与DOM元素是两个不同的概念。通过"$"函数,我们可以将HTML元素转换为jQuery对象,例如`$("#myElement")`选取ID为"myElement"的元素。 2. 选择器:jQuery支持CSS选择器,如...
## 一、jQuery基础 ### 1.1 jQuery选择器 jQuery的选择器类似于CSS,用于选取页面上的HTML元素。如`$("#id")`选取ID为"id"的元素,`$(".class")`选取所有class为"class"的元素,`$("tag")`选取所有tag类型的元素。...
通过这个基础,你可以构建更复杂的插件,实现更多自定义功能,比如动画效果、数据处理、交互逻辑等。在开发过程中,遵循jQuery的最佳实践,保持代码简洁和可维护性,你的插件将会受到广大开发者欢迎。