JQuery的方便之处——宽高设置、坐标值和滚动条+事件绑定机制
1、元素的宽高
可以通过css来进行设置,例如:$("元素").css({"宽度":"值","高度":"值"});
也可以通过JQuery中的函数直接进行设置,比如$("元素").width(数字或字符串);$("元素").height(数字或字符串);不给值的话就相当于获取宽高
两种方法获取宽高的区别,css获取宽高返回值是带单位px的,而JQuery的函数获取宽高是不带单位的。如果用于数学计算还是选择JQuery好一点。
2、坐标值
有两个函数:offset()和position()。offset()能设置位置,position()不能设置坐标值。
offset()函数:获取坐标值:相对浏览器页面的便移。返回的是一个对象Object{top:值,left:值}
设置坐标值:传递参数对象{top:值,left:值},设置之后元素自动变为相对定位。
position()函数:获取在坐标值:相对最近的定位的父元素的便移。
设置坐标值:无法设置。
4、滚动条(滚动显示,原理就是儿子元素的宽高超出了父元素的宽高,所以我们要滚动显示,所以要给父元素加一个overflow:scroll;就会出现一个滚动条)
水平滚动条和垂直滚动条
获取滚动条位置:$("父元素").scrollTop();
$("父元素").scrollLeft();
设置滚动条位置:$("父元素").scrollTop(数字或字符串);
$("父元素").scrollLeft(数字或字符串);
浏览器滚动事件:$(window).scroll(function(){ });
5、JQuery的事件介绍
6、JQuery的事件绑定机制bind
以前如果给一个元素绑定两个或多个事件的时候,是在这个元素对象之后一直.函数就好了。例如要给一个按钮绑定两个事件:
$("button").click(function(){ })
.mouseenter(function(){ });
JQuery很强大,给我们提供了一种事件绑定机制:bind
$("button").bind({
"click":function(){
},
"mouseenter":function(){
}
});
绑定事件之后动态添加元素将不会绑定事件。
7、JQuery事件委托机制delegate(这个也是一种绑定,主要是性能优化)
例如:你有100个li标签,需要给所有的li都绑定一个点击事件,传统的方法:$("li").click(function(){ });这样的话太浪费时间了。所以我们委托给父元素,这样能节省时间。例如:100个li标签的父元素是ul,$("ul").delegate("li","click",function(){
//参数含义 哪些子元素 事件 事件处理程序
});
绑定事件之后动态添加的元素也会绑定事件。
8、on绑定事件 (强烈推荐使用,但是版本1.7以上)
这是绑定的根源,其余所有的绑定事件都是通过on来实现的。提供了一种统一的绑定事件的方法。保留了delegate的优点。
$("父元素").on("事件","子元素",function(){ });
9、off事件的解绑
这个和on对应,$("父元素").off("事件");
10、JQuery提供了一种事件触发机制,用一个事件去触发另一个事件
11、事件对象
阻止事件冒泡:e.stopPropagation();
阻止默认行为:例如 :一个超链接的点击默认行为是跳转 $("a").click(function(e){ e.preventDefault(); });这样在点击的时候就可以阻止默认行为。
获取事件类型:e.type
鼠标的按键类型:左键1 中键2 右键 3
获取按键字母:e.keyCode
获取事件来源:e.target==this 说明是从自己来的,并不是事件冒泡触发的事件。
JQuery的方便之处——宽高设置、坐标值和滚动条+事件绑定机制的更多相关文章
- jquery如何获得页面元素的坐标值
http://www.cnblogs.com/pansly/archive/2011/05/25/2056222.html jquery如何获得页面元素的坐标值 yulutxt是输入经典语录的输入 ...
- JQUERY获取loaded 宽高这么变态
JQUERY获取loaded 宽高这么变态: $('<img/>').attr('src',img.src).load(function() { img.Owidth = $(this). ...
- Qt TabWidget QTabBar 宽高设置
/*************************************************************************** * Qt TabWidget QTabBar ...
- 关于jQuery新的事件绑定机制on()的使用技巧
关于jQuery新的事件绑定机制on()的使用技巧 http://www.jb51.net/article/36064.htm 本篇文章介绍了,关于jQuery新的事件绑定机制on()的使用技巧.需要 ...
- jQuery新的事件绑定机制on()
浏览jQuery的deprecated列表,发现live()和die()在里面了,赶紧看了一下,发现从jQuery1.7开始,jQuery引入了全新的事件绑定机制,on()和off()两个函数统一处理 ...
- jQuery新的事件绑定机制on()示例应用
投稿:whsnow 字体:[增加 减小] 类型:转载 从jQuery1.7开始,jQuery引入了全新的事件绑定机制,on()和off()两个函数统一处理事件绑定,下面通过示例为大家介绍下 ...
- IE6和IE7中<a>标签宽高设置无效的问题
昨天写了一个引导界面, 发现界面中的IE67存在一个问题, 在某些情况下, A锚链接如果设置了宽高,而且position:absolute的情况下, A标签的宽高无效, 至于总体的效果, 因为这个A ...
- 根据设备宽高设置View的大小
得到设备屏幕宽高: WindowManager wManager = (WindowManager)context.getSystemService(Context.WINDOW_SERVICE); ...
- 为什么canvas宽高要设置在标签内>>宽高设置在style和设置在canvas的区别
一直很困惑为什么canvas标签和其他标签不一样,宽高需要设置在canvas标签里,设置在style里就会有问题. 纯粹个人理解,有错误欢迎指出. > 结论写在头 设置在style里有问题其实是 ...
随机推荐
- Oracle删除死锁进程的方法
本文实例讲述了Oracle删除死锁进程的方法.分享给大家供大家参考.具体如下: 步骤1:用以下SQL查看进程列表,判断出被锁定的表 复制代码代码如下: SELECT dob.OBJECT_NAME T ...
- 深入理解typedef
首先请看看下面这两句: typedef int a[10]; typedef void (*p)(void); 如果你能一眼就看出它 ...
- dip2px
package com.itheima.zhbj.utils; import android.content.Context; public class DensityUtils { public s ...
- Entity Framework 学习中级篇3—存储过程(中)
目前,EF对存储过程的支持并不完善.存在以下问题: l EF不支持存储过程返回多表联合查询的结果集. l EF仅支持返回返回某个表的全部字段,以便转换成对应的实体.无法 ...
- php之PDO使用【转载】
<?php $dbh = new PDO('mysql:host=localhost;dbname=access_control', 'root', ''); $dbh->setAttri ...
- MySQL启动相关知识
使用mysqld和mysqld_safe启动的区别 直接运行mysqld程序来启动MySQL服务的方法很少见,mysqld_safe脚本[注意:mysqld_safe只是一个脚本]会在启动MySQL服 ...
- centos 6.5常见lib库安装
在CentOS安装软件的时候,可能缺少一部分支持库,而报错.这里首先安装系统常用的支持库.那么在安装的时候就会减少很多的错误的出现. # yum install -y gcc gdb strace g ...
- 收缩sql server数据库日志
项目中,可能数据库(sql server数据库)日志太多,占了很多磁盘空间,可以通过收缩数据库日志,减少日志文件大小. 下面以Northwind数据库为例: 1.把数据库的恢复模式设置为“简单模式”: ...
- C、C++、java的区别
经常听到有人在抱怨这个语言哪里哪里 不好,那个语言又是如何的优秀.对于这样 的牢骚,我只是一笑而过. 就我而言,语言只是工具,没有好坏之 分.只要你采用相应的语言,完成对应的工 作,那你的目标就完成了 ...
- Linux环境下Android JNI程序的编译
尊重原创作者,转载请注明出处: http://blog.csdn.net/gemmem/article/details/8993493 在android开发中,有时候需要编写一些C/C++代码,这时候 ...