学习记录6

妖精的绣舞 提交于 2019-11-28 01:01:58

(1)scorllLeft()和scorllTop()

用法和offset相似,获取的是数字,设置不用单位

(2)固定导航栏

$(function())加载后执行有可能获取不到图片高度

解决方法

改成$(window).load()

一种在style中设置样式

$(window).scorllLeft()滚动条事件

(3)一个对象多个函数方法

1链式编程

2对象.bind({"方法名 方法名(同个函数可写在一起,用空格隔开)":匿名函数,"方法名":匿名函数});可以同时绑定多个事件

3当前对象.delegate("子对象","方法名",匿名函数)

4on 绑定事件为主流

on与click区别是element.click()这种写法不支持给动态元素或样式绑定事件。支持给动态元素绑定事件的是.live()和.on()。live在jQquery1.7后就不推荐使用了。使用.on()时注意,on前面的元素必须在页面加载的时候就存在DOM里面。

为所有匹配选择器(selector参数)的元素绑定一个或多个事件处理函数,基于一个指定的根元素的子集,匹配的元素包括那些目前已经匹配到的元素,也包括那些今后可能匹配到的元素。

(4)取消默认动作只有用preventDefault()来取消

function(event){
event.preventDefault();
}
(5)解绑事件
用什么绑定就用什么解绑
on--.off("函数名 函数名",匿名函数);解绑多个事件可写在一起用空格隔开,移除子,父还在
对象.off()移除父子事件
bind--unbind
delegate--undelegate
注意
如果父和子都是通过正常方式进行绑定,通过off解绑时,父解绑,子不解绑
但是如果子是通过父的delegate绑定的,父这个off解绑,这时父和子相同事件会被解绑
(6)触发事件
触发该事件在事件内部采用其他元素的事件方法
1直接调用
click
2trigger("事件名‘’) 
3triggerHandle("事件名")
1 2同,都会触发浏览器的默认事件并执行,获得焦点是浏览器默认行为
3不触发浏览器但是会执行
(7)获取函数运行有多少个参数
argument.length
获取去第几个参数
argument[i]
event.delegateTarget---触发绑定的父节点
event.currentTarget--实际触发节点
event.Target--同2

(8)事件冒泡和取消

事件冒泡;元素包含元素,这些元素都有相同的事件,一旦最里面的元素触发事件,外面的元素也会触发

取消事件冒泡

return false//也可以取消浏览器默认行为

(9)循环

不同元素不同方式

.each(索引,对象)

(10)$释放控制权

var a = $.noConflict();

$对jq就失去特殊意义,要引用用jQuery代替

(11)ui插件

引入外部js文件

$.fn.函数名(){};

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!