-
在jQuery通过on方法绑定一个原生事件 $('#elem').on('click', function() { alert("触发系统事件") }); 要和on一起用 alert需要执行的条件:必须有用户点击才可以。如果不同用户交互是否能在某一时刻自动触发该事件呢? 正常来说是不可以的,但是jQuery解决了这个问题,提供了一个trigger方法来触发浏览器事件 所以我们可以这样: $('#elem').trigger('click'); 在绑定on的事件元素上,通过trigger方法就可以调用到alert了,挺简单!查看全部
-
1. event.type: 获取触发元素的事件类型 2. event.pageX 和 event.pageY: 获取鼠标当前相对于页面的坐标 3. event.preventDefault() 方法:阻止默认行为 在执行这个方法后,如果点击一个链接(a标签),浏览器不会跳转到新的 URL 去了。我们可以用 event.isDefaultPrevented() 来确定这个方法是否(在那个事件对象上)被调用过了。 4. event.stopPropagation() 方法:阻止事件冒泡 事件是可以冒泡的,为防止事件冒泡到DOM树上,也就是不触发的任何前辈元素上的事件处理函数。 5. event.which:获取在鼠标单击时,单击的是鼠标的哪个键 event.which 将 event.keyCode 和 event.charCode 标准化了。 6. event.currentTarget:在事件冒泡过程中的当前DOM元素 冒泡前的当前触发事件的DOM对象,等同于this 7. this 和 event.target 的区别: js中事件是会冒泡的,所以this是可以变化的,但 event.target 不会变化,它永远是直接接受事件的目标DOM元素; 8. this 和 event.target 都是dom对象 如果要使用jquey中的方法可以将他们转换为jquery对象。比如this和$(this)的使用、event.target和$(event.target)的使用;查看全部
-
event.target target 属性可以是注册事件时的元素,或者它的子元素。通常用于比较 event.target 和 this 来确定事件是不是由于冒泡而触发的。经常用于事件冒泡时处理事件委托 ul有N个子元素li(这里只写了3个),如果我要响应每一个li的事件,那么常规的方法就是需要给所有的li都单独绑定一个事件监听,这样写法很符合逻辑,但是同时有显得繁琐 因为li都有一个共同的父元素,而且所有的事件都是一致的,这里我们可以采用要一个技巧来处理,也是常说的"事件委托" $("ul").on('click',function(e){ alert('触发的元素是内容是: ' + e.target.textContent) })//对于每一个不同的li都可以对应 简单来说:event.target代表当前触发事件的元素,可以通过当前元素对象的一系列属性来判断是不是我们想要的元素查看全部
-
绑定2个事件 $("elem").on("mousedown mouseup",fn) 删除一个事件 $("elem").off("mousedown") 删除所有事件 $("elem").off("mousedown mouseup") 快捷方式删除所有事件,这里不需要传递事件名了,节点上绑定的所有事件讲全部销毁 $("elem").off() $(this).text( '触发类型:' + (e.type) + ",次数" + ++n) ++n; 有两个++n 所以mosuedown执行一次n每次加2查看全部
-
//给body绑定一个click事件 //没有直接a元素绑定点击事件 //通过委托机制,点击a元素的时候,事件触发 当触发a元素时 事件将往上冒泡 一直会冒泡在body上 $('body').on('click', 'a', function(e) { alert(e.target.textContent) })查看全部
-
$("#test3").on({ mousedown: function(e) { $(this).text('触发事件:' + e.type) }, e.type指事件类型查看全部
-
keypress事件与keydown和keyup的主要区别 (press与down相似 但需要按回车敲进去 只能捕获单个字符,不能捕获组合键 无法响应系统功能键(如delete,backspace) 不区分小键盘和主键盘的数字字符 总而言之, KeyPress主要用来接收字母、数字等ANSI字符,而 KeyDown 和 KeyUP 事件过程可以处理任何不被 KeyPress 识别的击键。诸如:功能键(F1-F12)、编辑键、定位键以及任何这些键和键盘换档键的组合等。查看全部
-
在input元素上绑定keydown事件会发现一个问题: 每次获取的内容都是之前输入的,当前输入的获取不到 按下的一瞬间时 文字还没有输入到文本框所以第一次下边获取不到这个值。简单点说文字输入进去文本框这个行为要慢于keydown事件 keydown的速度>文本框获取值的速度>keyup的速度查看全部
-
$('#target1').submit(function(e) { alert('捕获提交表达动作,不阻止页面跳转') }); //回车键或者点击提交表单,禁止浏览器默认跳转: $('#target2').submit(function() { alert('捕获提交表达动作,阻止页面跳转') return false; });查看全部
-
//触发元素的select事件 select()用法也是三种 $("input").select(function(e){ alert(e.target.value) }) $("#bt1").click(function(){ $("input").select(); }) 因为浏览器有默认行为,当你点击按钮时第一次是触发了select事件,第二次就是默认行为,默认行为会选中input的文本,就又触发 了input元素的select事件,在select的回调函数中添加e.preventDefault()就可以取消默认行为了查看全部
-
当 textarea 或文本类型的 input 元素中的文本被选择时,会发生 select 事件。 这个函数会调用执行绑定到select事件的所有函数,包括浏览器的默认行为。 可以通过在某个绑定的函数中返回false来防止触发浏览器的默认行为。 select事件只能用于<input>元素与<textarea>元素 使用方法类似于前面的click 三种方法查看全部
-
e.target指的是触发事件的节点,在这里指的是$('.target1') target 事件属性可返回事件的目标节点(触发该事件的节点),如生成事件的元素、文档或窗口 e是接收 触发事件产生的事件对象,target属性获取触发时间对象的目标 e.target指的是触发事件的节点,在这里指的是$('.target1')查看全部
-
input元素 监听value值的变化,当有改变时,失去焦点后触发change事件。对于单选按钮和复选框,当用户用鼠标做出选择时,该事件立即触发。 select元素 对于下拉选择框,当用户用鼠标作出选择时,该事件立即触发 textarea元素 多行文本输入框,当有改变时,失去焦点后触发change事件查看全部
-
举个简单的例子 <div> <input type="text" /> </div> 其中input元素可以触发focus()事件 div是input的父元素,当它包含的元素input触发了focus事件时,它就产生了focusin()事件。 focus()在元素本身产生,focusin()在元素包含的元素中产生 当里面的触发了focus之后这个父元素就产生了focusin blur与focusout也亦是如此查看全部
-
focus()在元素本身产生,focusin()在元素包含的元素中产生 blur与focusout也亦是如此 他们四个都是与表单聚焦有关 focus 是事件元素获取焦点 时触发,focusout是当前事件元素及其子节点元素失去焦点时也会触发。你可能想问的是blur和focusout 吧, focusout不仅是当前元素失去焦点会触发,还包括其子节点元素失去焦点也会触发 focus blur 和 mouseenter mouseleave相似 你点击的时候相当于只点击了文本框 文本框没事件 不触发 focusin focusout 和 mouseover mouseout相似 你在文本框内获得焦点和失去焦点的同时相当于从子到父都触发了事件 冒泡事件最好的理解就是和水的冒泡是一样的,就是从最底层向上去找寻参数,在html中就是从最里层向最外层去寻找合适的标签之后就停止 $(".aaron").focus(function() { $(this).css('border', '2px solid red') }) 注意原文中这一句话:“div是input的父元素,当它包含的元素input触发了focus事件时,它就产生了focusin()事件。” 所以说,如果代码如下,则input上出现效果,且div上产生focusin( )事件 1 $(".aaron input").focus(function() { $(this).css('border', '2px solid red') }) 即选子代 触发后也激起父代查看全部
举报
0/150
提交
取消