-
function data1(e) { alert(e.data) //1111 } //关键理解点:1、data1是一个带功能的函数,2、data是jQuery里面的event的属性(包含当前执行的处理程序被绑定时传递到事件方法的可选数据),所以无需定义。 function a() { $("button:eq(2)").click(1111111, data1) //插入参数,并调用data1函数 } a(); //调用a函数2查看全部
-
针对测试三的一点理解: ele.click(argument1,function(e){ alert(e.dada); }) 这里传给click里的第一个参数其实就是jqurey做好的一种功能,如果你填了这个argument1参数,就会把这个参数传递赋值给当前对象的event.data属性,如果在之后的函数里调用event.data,就可以访问并使用这个属性。 很多jquery里的事件都可以这样传递参数,只要知道这是一种传参的写法就行了。查看全部
-
function(e){} e是jq事件的事件对象,里面保存了事件的属性和方法 e.target表示这个触发这个事件的元素 e.data 表示第一个参数存储的值查看全部
-
方法一:$ele.mousemove() 绑定$ele元素,不带任何参数一般是用来指定触发一个事件,用的比较少 <div id="test">点击触发<div> $("ele").mousemove(function(){ alert('触发指定事件') }) $("#test").click(function(){ $("ele").mousemove() //指定触发事件 }); 方法二:$ele.mousemove( handler(eventObject) ) 绑定$ele元素,每次$ele元素触发点击操作会执行回调 handler函数 这样可以针对事件的反馈做很多操作了 <div id="test">滑动触发<div> $("#test").mousemove(function() { //this指向 div元素 }); 方法三:$ele.mousemove( [eventData ], handler(eventObject) ) 使用与方法二一致,不过可以接受一个数据参数,这样的处理是为了解决不同作用域下数据传递的问题 <div id="test">点击触发<div> $("#test").mousemove(11111,function(e) { //this指向 div元素 //e.data => 11111 传递数据 }); mousemove事件触发需要以下几点: mousemove事件是当鼠标指针移动时触发的,即使是一个像素 如果处理器做任何重大的处理,或者如果该事件存在多个处理函数,这可能造成浏览器的严重的性能问题查看全部
-
mousemove事件是当鼠标指针移动时触发的,即使是一个像素 只有鼠标在元素内移动, 就会不断地触发 1. event.clientX、event.clientY 鼠标相对于浏览器窗口(客户端)可视区域的X,Y坐标(窗口坐标),可视区域不包括工具栏和滚动条。 2. event.pageX、event.pageY 类似于event.clientX、event.clientY,但它们使用的是文档坐标而非窗口坐标(如果文档长3000px, 溢出窗口, 也是文档的长度)。 3. screenX、screenY 鼠标相对于用户显示器屏幕左上角的X,Y坐标。 4. event.offsetX、event.offsetY 鼠标相对于事件源元素(srcElement)的X,Y坐标查看全部
-
mousedown事件触发需要以下几点: mousedown强调是按下触发 如果在一个元素按住了鼠标不放,并且拖动鼠标离开这个元素,并释放鼠标键,这仍然是算作mousedown事件 任何鼠标按钮被按下时都能触发mousedown事件 用event 对象的which区别按键,敲击鼠标左键which的值是1,敲击鼠标中键which的值是2,敲击鼠标右键which的值是3 mouseup事件触发需要以下几点: mouseup强调是松手触发,与mousedown是相反的 mouseup与mousedown组合起来就是click事件 如果用户在一个元素上按下鼠标按键,并且拖动鼠标离开这个元素,然后释放鼠标键,这仍然是算作mouseup事件 任何鼠标按钮松手时都能触发mouseup事件 用event 对象的which区别按键,敲击鼠标左键which的值是1,敲击鼠标中键which的值是2,敲击鼠标右键which的值是3查看全部
-
方法一:$ele.click() 绑定$ele元素,不带任何参数一般是用来指定触发一个事件,用的比较少 <div id="test">点击触发<div> $("ele").click(function(){ alert('触发指定事件') }) $("#test").click(function(){ $("ele").click() //手动指定触发事件 }); 方法二:$ele.click( handler(eventObject) ) 绑定$ele元素,每次$ele元素触发点击操作会执行回调 handler函数,这样可以针对事件的反馈做很多操作了,方法中的this是指向了绑定事件的元素 <div id="test">点击触发<div> $("#test").click(function() { //this指向 div元素 }); 方法三:$ele.click( [eventData ], handler(eventObject) ) 使用与方法二一致,不过可以接受一个数据参数,这样的处理是为了解决不同作用域下数据传递的问题 <div id="test">点击触发<div> $("#test").click(11111,function(e) { //this指向 div元素 //e.data => 11111 传递数据 });查看全部
-
triggerHandler不会触发浏览器的默认行为,.triggerHandler( "submit" )将不会调用表单上的.submit() .trigger() 会影响所有与 jQuery 对象相匹配的元素,而 .triggerHandler() 仅影响第一个匹配到的元素 使用 .triggerHandler() 触发的事件,并不会在 DOM 树中向上冒泡。 如果它们不是由目标元素直接触发的,那么它就不会进行任何处理 与普通的方法返回 jQuery 对象(这样就能够使用链式用法)相反,.triggerHandler() 返回最后一个处理的事件的返回值。如果没有触发任何事件,会返回 undefined查看全部
-
alert需要执行的条件:必须有用户点击才可以。如果不同用户交互是否能在某一时刻自动触发该事件呢? 正常来说是不可以的,但是jQuery解决了这个问题,提供了一个trigger方法来触发浏览器事件 所以我们可以这样: $('#elem').trigger('click'); 在绑定on的事件元素上,通过trigger方法就可以调用到alert了,挺简单! 再来看看.trigger是什么? 简单来讲就是:根据绑定到匹配元素的给定的事件类型执行所有的处理程序和行为 trigger除了能够触发浏览器事件,同时还支持自定义事件,并且自定义时间还支持传递参数 $('#elem').on('Aaron', function(event,arg1,arg2) { alert("自触自定义时间") }); $('#elem').trigger('Aaron',['参数1','参数2']) trigger触发浏览器事件与自定义事件区别? 自定义事件对象,是jQuery模拟原生实现的 自定义事件可以传递参数查看全部
-
event.type:获取事件的类型 触发元素的事件类型 $("a").click(function(event) { alert(event.type); // "click"事件 }); event.pageX 和 event.pageY:获取鼠标当前相对于页面的坐标 通过这2个属性,可以确定元素在当前页面的坐标值,鼠标相对于文档的左边缘的位置(左边)与 (顶边)的距离,简单来说是从页面左上角开始,即是以页面为参考点,不随滑动条移动而变化 event.preventDefault() 方法:阻止默认行为 这个用的特别多,在执行这个方法后,如果点击一个链接(a标签),浏览器不会跳转到新的 URL 去了。我们可以用 event.isDefaultPrevented() 来确定这个方法是否(在那个事件对象上)被调用过了 event.stopPropagation() 方法:阻止事件冒泡 事件是可以冒泡的,为防止事件冒泡到DOM树上,也就是不触发的任何前辈元素上的事件处理函数 event.which:获取在鼠标单击时,单击的是鼠标的哪个键 event.which 将 event.keyCode 和 event.charCode 标准化了。event.which也将正常化的按钮按下(mousedown 和 mouseupevents),左键报告1,中间键报告2,右键报告3 event.currentTarget : 在事件冒泡过程中的当前DOM元素 冒泡前的当前触发事件的DOM对象, 等同于this. this和event.target的区别: js中事件是会冒泡的,所以this是可以变化的,但event.target不会变化,它永远是直接接受事件的目标DOM元素; .this和event.target都是dom对象 如果要使用jquey中的方法可以将他们转换为jquery对象。比如this和$(this)的使用、event.target和$(event.target)的使用;查看全部
-
绑定2个事件 $("elem").on("mousedown mouseup",fn) 删除一个事件 $("elem").off("mousedown") 删除所有事件 $("elem").off("mousedown mouseup") 快捷方式删除所有事件,这里不需要传递事件名了,节点上绑定的所有事件讲全部销毁 $("elem").off()查看全部
-
keypress事件与keydown和keyup的主要区别 只能捕获单个字符,不能捕获组合键 无法响应系统功能键(如delete,backspace) 不区分小键盘和主键盘的数字字符 总而言之, KeyPress主要用来接收字母、数字等ANSI字符,而 KeyDown 和 KeyUP 事件过程可以处理任何不被 KeyPress 识别的击键。诸如:功能键(F1-F12)、编辑键、定位键以及任何这些键和键盘换档键的组合等。查看全部
-
具体能触发submit事件的行为: <input type="submit"> <input type="image"> <button type="submit"> 当某些表单元素获取焦点时,敲击Enter(回车键) 上述这些操作下,都可以截获submit事件。 这里需要特别注意: form元素是有默认提交表单的行为,如果通过submit处理的话,需要禁止浏览器的这个默认行为 传统的方式是调用事件对象 e.preventDefault() 来处理, jQuery中可以直接在函数中最后结尾return false即可 jQuery处理如下: $("#target").submit(function(data) { return false; //阻止默认行为,提交表单 });查看全部
-
trigger方法在绑定on事件元素之上进行。查看全部
-
triggerHandler与trigger的用法是一样的,重点看不同之处: •triggerHandler不会触发浏览器的默认行为查看全部
举报
0/150
提交
取消