Jquery是一个优秀的js库,它简化了js的复杂操作,不需要关心浏览器的兼容问题,提供了大量实用方法。
Jquery的写法
方法函数化
链式操作
取值赋值合体]
$(“p”).html(); 取值
$(“p”).html(‘hello’); 赋值
(当一组元素的时候,取值是一组中的第一个,赋值是一组中的所有元素。)
Jq与js可以共存,不能混用
主要的筛选方法
has() not() filter()
next() prev() find() eq() index() attr() indexOf()
Attr() 对属性进行操作,给元素添加属性且赋值,或者取得某个属性的值。
$(“div”).attr(‘title’,’123’);
<div title=”123”></div>
Filter() 对一组元素进行筛选,过滤
满足条件的会被留下来
$(‘div’).filter(‘.box’).css(‘background’,’red’);
含有box类的div背景颜色会改变
Not() filter的反义词
$(‘div’).not(‘.box’).css(‘background’,’red’);
不含有box类的div背景颜色会改变
(filter和not是针对当前元素的,has是针对元素里面的内容的)
Has() 包含的意思
$(".box").has('#ul').css("background","#ccc");
$(“.box”).has(span).css(“background”,“red”);
Next() 找到当前元素的下一个兄弟节点
Prev() 找到当前元素的上一个兄弟节点
Find() 查找
$(‘div’).find(‘h2’).css(‘background’,’red’);
eq() 获得对应下标的元素
$(‘div’).find(‘h2’).eq(1).css(‘background’,’red);
Index(); 获得当前元素的索引。索引就是当前元素在所有兄弟节点中的位置
$(‘#h’).index();
编写选项卡
<
input type=
"submit" value=
"111">
<
input type=
"submit" value=
"222">
<
input type=
"submit" value=
"333">
<
div id=
"div">
<
div class=
"active">111</
div>
<
div>222</
div>
<
div>333</
div>
</
div>
<script>
$(function(){
$("input").click(function(){
var i=$(this).index();
$("#div div").eq(i).show().siblings().hide();
});
});
</script>
Jquery中常用的属性操作方法
addClass()
添加类名
$(‘div’).addClass(‘box2 box3’);
removeClass()
删除类名
$(‘div’).removeClass(‘box2 box3’);
width()
获取元素的宽度,不包含padding
Height()
获取元素的高度
innerWidth()
获取元素不包含变宽的宽度(包含padding)
outerWidth()
获取元素外的宽度,包含padding border
outerWidth(true) (包含padding,border,和margin)
节点操作常用方法
insertBefore() 插入到节点的前面(动词)剪切的功能
$(‘span’).insertBefore($(‘div’));
<span>1213</span>
<div>2345</div>
before() 节点的前面插入某元素(名词)
insertAfter() 插入到节点的后面(动词)(原生js中没有这个方法)
$(‘div’).insertAfter($(‘span’));
<span>1213</span>
<div>2345</div>
after() 节点的后面插入某元素(名词)
appendTo()
插入到节点内部所有子节点的后面(动词形式)
append() (名词形式)
prependTo()
插入到节点内部所有子节点的前面(动词形式)
prepend() (名词形式)
区别(后续操作不一样,)
$(‘span’).insertBefore($(‘div’)).css(‘background’,’red’);
$(‘div’).before($(‘span’)).css(‘background’,’red’);
remove() 删除节点
on()
$(‘div’).on(‘click mouseover’,function(){
Alert(123);
})
自定义事件,也可以写多个事件,来针对一个操作
$(‘div’).on({
‘click’:function(){
Alert(123);
},
‘mouseover’:function(){
Alert(456);
$(‘div’).off(‘mouseover’);
}
});
off() 关闭它的所有事件操作
scrollTop() 获取滚动条的滚动距离
$(document).click(function(){
Alert($(window).scrollTop());
})
弹窗(popup),动态创建
创建标签
关键点,弹框的位置,绝对定位,position : absolute;
Left: (窗口宽度 - 弹框宽度)/2;
Top: (窗口的高度 – 弹框的高度)/2 + 滚动条的高度;
监听窗口大小变化和滚动事件
$(window).on(‘resize scroll’,function(){
})
事件细节
Event对象,对事件细节进行操作
ev :兼容后的even对象
ev.pageX (相对于文档的)
ev.clientX (相对于可视区,可视区加上滚动条距离就是pageX)
ev.pageY (相对于文档的)
ev.clientY (相对于可视区的)
),可以记录鼠标的键值
阻止默认事件 ev.preventDefault();
阻止冒泡的操作 ev.stopPropagation(); return false; // 阻止默认事件 +阻止冒泡的操作
One() 表示事件只执行一次
$(‘div’).one(‘click’,function(){
alert(123);
})
offset() 获取元素距离屏幕的距离
$(‘div’).offset().left
$(‘div’).offset().top
Position() 获取元素距离父元素的距离,元素被定位,margin不算,只能是left值,
到有定位的父级的left值,把当前元素转化成类似定位的形式
$(‘div’).position().left;
$(‘div’).position().top;
parent() 获取父级
offsetParent() 获取有定位的父级
val()
$(‘input’).val();
size() 获取一组元素的长度,像length
$(‘li’).size();
each() 相当于原生的for()循环 each()当中可以接受回调函数
$(‘li’).each(function(下标,元素)){
}
$(‘li’).each(function(I,elem){
$(elem).html(i);
})
<li>0</li>
<li>1</li>
<li>2</li>
<li>3</li>
一参(下标),二参(每个元素)
编写拖拽
$(window).width() //浏览器当前窗口可视区域宽度,不包含滚动条
$(window).height() //浏览器当前窗口可视区域高度,不包含滚动条
$(document).width() //浏览器当前窗口文档对象宽度,不包含右边的滚动条的宽度
$(document).height() //浏览器当前窗口文档的高度,包含了滚动条的高度
alert($(document.body).width()); //浏览器当前窗口文档body的宽度
alert($(document.body).height()); //浏览器当前窗口文档body的高度
$(document.body).outerWidth(true) //浏览器当前窗口文档body的总宽度 包括border padding margin
$(document.body).outerHeight(true) //浏览器当前窗口文档body的总高度 包括border padding margin
- jQuery基础知识点(下)
在实际开发中,jQuery的实践性非常强大.上一篇本人已经整理出了一部分基础知识点,该文即是对以上的补充和扩展. 1.表单值的操作 //获取文本框的值 //txt.value var val = $( ...
- jQuery基础知识点(DOM操作)
1.样式属性操作 1)设置样式属性操作 ①设置单个样式: // 第一个参数表示:样式属性名称 // 第二个参数表示:样式属性值 $(selector).css(“color”, ...
- Jquery基础知识点
1.选择器:查找和过滤 查找:向下查找用find(), 向上查找用parent(), 同级查找用next(), prev() 过滤:和函数式编程的map.filter类似,jQuery对象也有类 ...
- jQuery基础知识点(上)
jQuery是一个优秀的.轻量级的js库 ,它兼容CSS3,还兼容各种浏览器(IE 6.0+, FF1.5+, Safari 2.0+, Opera 9.0+),而jQuery2.0及后续版本将不再支 ...
- Jquery基础知识点梳理
1.第一个jq程序 a.jq对象和dom对象的方法不能混用 b.dom对象转换成jq对象$(dom),jq对象转换成dom对象jq[0],转换之后方法就可以使用了 2.jq选择器 基本选择器 $('b ...
- .NET基础知识点
.NET基础知识点 l .Net平台 .Net FrameWork框架 l .Net FrameWork框架提供了一个稳定的运行环境,:来保障我们.Net平台正常的运转 l 两种交 ...
- JavaScript 开发者经常忽略或误用的七个基础知识点(转)
JavaScript 本身可以算是一门简单的语言,但我们也不断用智慧和灵活的模式来改进它.昨天我们将这些模式应用到了 JavaScript 框架中,今天这些框架又驱动了我们的 Web 应用程序.很多新 ...
- JavaScript 开发者经常忽略或误用的七个基础知识点
JavaScript 本身可以算是一门简单的语言,但我们也不断用智慧和灵活的模式来改进它.昨天我们将这些模式应用到了 JavaScript 框架中,今天这些框架又驱动了我们的 Web 应用程序.很多新 ...
- JavaScript开发者常忽略或误用的七个基础知识点
JavaScript 本身可以算是一门简单的语言,但我们也不断用智慧和灵活的模式来改进它.昨天我们将这些模式应用到了 JavaScript 框架中,今天这些框架又驱动了我们的 Web 应用程序.很多新 ...
随机推荐
- 程序C++ to C#交互
第一次用C#调用C/C++生成的DLL文件,感觉有点新鲜,事实上仅仅是实现了执行在公共语言执行库 (CLR) 的控制之外的"非托管代码"(执行在公共语言执行库(CLR)的控制之中的 ...
- pat(A)1041. Be Unique(哈希)
1.链接:点击打开链接 2.代码: #include<cstdio> #include<iostream> #include<cstring> using name ...
- Windows下编译DCMTK
原帖地址:http://www.cnblogs.com/yinxufeng/p/3636241b7084b0340cc56fd37f9e2fd8.html 下载源码生成VS项目工程编译源码 下载源码 ...
- 项目已经部署,tomcat已经启动,网址也没问题,却出现404错误
这个有可能是tomcat在初始化资源的时候发生了异常...判断tomcat是否发生异常就是看tomcat启动日志里有没有报错就行了. 另一种原因就是可能是修改了项目名称.因为web名称实际上是没有跟着 ...
- 【iOS系列】-iOS查看沙盒文件图文教程(真机+模拟器)
[iOS系列]-iOS查看沙盒文件图文教程(真机+模拟器) 1:模拟器 1.1 方法1: 程序中打印一下的地址,能直接前往沙盒路径. NSString *path = [NSSearchPathFor ...
- flask的CBV,flash,Flask-Session,及WTForms-MoudelForm
1,CBV: from flask import vews class LoginView(views.MethodView): def get(self): return "雪雪其实也很好 ...
- Hadoop0.20.203.0在关机重启后,namenode启动报错(/dfs/name is in an inconsistent state)
Hadoop0.20.203.0在关机重启后,namenode启动报错: 2011-10-21 05:22:20,504 INFO org.apache.hadoop.hdfs.server.comm ...
- XMU 1617 刘备闯三国之汉中之战 【BFS+染色】
1617: 刘备闯三国之汉中之战 Time Limit: 1000 MS Memory Limit: 128 MBSubmit: 6 Solved: 5[Submit][Status][Web B ...
- SQL Server 多库操作 库名.dbo.表名 出错的问题!
SQL Server 多库操作 库名.dbo.表名 出错的问题! 数据库名不要用数字开头. 例如:343934.dbo.user 这就会出错.md a343934.dbo.user 就没问题!! 记住 ...
- YTU 2952: A代码填充--谁挡住了我
2952: A代码填充--谁挡住了我 时间限制: 1 Sec 内存限制: 128 MB 提交: 135 解决: 38 题目描述 n个人前后站成一列,对于队列中的任意一个人,如果排在他前面的人的身高 ...