1.可以通过行内添加事件的方法,比如onclick="fn()"; 在js中写好方法名对应的方法就可以了,如果绑定方法的元素太多 2.jquery的on事件绑定 //on事件可以给动态添加的元素也绑定事件. $("#content").on('click','li',function () { console.log("aaa") var num = $(this).parents("group").index(); cons…
事件背景: 最近在做一个移动端业务的时候碰到一个bug,在ios上对body绑定click事实现事件代理冒泡至某些元素上尽然不生效. 思考: 暂借助jquery展示下事件绑定代码,将所有标签含有data-tip属性的元素通过事件代理至body $('body').on('click','[data-tip]',function(e){ console.log($(this.).attr('data-tip')) }) 这样做在android和pc上都可以正常实现,但是在ios上面对部分标签尽然不…
避免先写了DOM操作,但是元素是动态加载的,所以点击不生效,比较好的方法有两个: 1.动态添加的时候加行内事件,比如onclick="funcName()" 在js中写好方法名对应的方法就可以了,如果绑定方法的元素太多,可以考虑使用方法二: 2.jquery的on事件绑定 eg: on事件可以给动态添加的元素也绑定事件. $("#optionGroup").on('click','.input-group .delete-option',function () {…
$('input').click(function () { //处理代码 }); 这只能是对已经加载好的元素定义事件,那些后来添加插入的元素则需要另行绑定,对于页面中动态添加的元素,在页面加载完成后添加的,因此页面加载时无法给其绑定事件处理函数,好在jquery提供了on方法,如为动态添加的元素附加单击事件.对于jquery1.7+的版本直接用on方法, $('body').append('<p id=\"pid\"></p>'); $('#pid').on(…
我们可以通过 $(document).on('click', '#xxx', callback) 这种形式解决. 原因,一般情况下,我们是通过 $('#xxx').click(callback) 这种形式去绑定,这种绑定之所以生效是因为,我们程序加载 $(function(){}) 的时候绑定了回调,而动态添加上去的,我们并没有去绑定. 所以动态添加的元素,点击的时候并不会触发我们想要的效果.但是实际上,在我们点击的时候,还是产生了点击事件,只是这个事件没有被我们的预期回调处理,因为我们的回调没…
语法: $(selector).on(event,childSelector,data,function) event:必需.规定要从被选元素移除的一个或多个事件或命名空间.由空格分隔多个事件值,也可以是数组.必须是有效的事件.childSelector:可选.规定只能添加到指定的子元素上的事件处理程序(且不是选择器本身,比如已废弃的 delegate() 方法).dat::可选.规定传递到函数的额外数据.function:可选.规定当事件发生时运行的函数. 比如要实现下图功能(点击添加行,这里…
<div id="testdiv">   <ul></ul> </div> 需要给<ul>里面动态添加的<li>标签添加click事件 jquery 1.7版以前使用live动态绑定事件 $("#testdiv ul li").live("click",function(){ }); jquery 1.7版以后使用on动态绑定事件 $("#testdiv ul&qu…
单纯的给li标签添加click事件,是不会执行的. 经过试验 <ul id="searchedUser"><li>搜索结果</li></ul> 方法一: $("#searchedUser").delegate('.searchli','click', function () { alert("); }); 方法二 $("#searchedUser").on('click', '.searc…
addClass()-为每个匹配的元素添加指定的样式类名after()-在匹配元素集合中的每个元素后面插入参数所指定的内容,作为其兄弟节点append()-在每个匹配元素里面的末尾处插入参数内容attr() - 获取匹配的元素集合中的第一个元素的属性的值bind() - 为一个元素绑定一个事件处理程序children() - 获得匹配元素集合中每个元素的子元素,选择器选择性筛选clone()-创建一个匹配的元素集合的深度拷贝副本contents()-获得匹配元素集合中每个元素的子元素,包括文字和…
js进阶---12-11.jquery如何给动态创建出来的元素绑定事件 一.总结 一句话总结:通过事件委托的方式,通过on方法 1.on方法在事件绑定的时候,data方式带额外参数时,字符串参数和其它参数的使用不一样,为什么? 因为字符串参数默认会被当成动态生成元素的事件绑定方法,所以需要在前面添加参数null. 64 $('#btn1').on('click',null,'div',function(e){ 65 alert('事件绑定'+e.data) 66 }) 对比一下额外参数的json…