首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JS动态加载数据绑定事件--delegate() 方法

JS动态加载数据绑定事件-委托delegate() 方法 ---- W3C规范定义 定义和用法 delegate() 方法为指定元素(属于被选元素子元素)添加一个或多个事件处理程序,并规定当这些事件发生时运行函数...使用 delegate() 方法事件处理程序适用于当前或未来元素(比如由脚本创建新元素)。...---- JavaScript动态加载数据,同时给他加载绑定事件,我选用Jquwey中 delegate() 方法 我理解,delegate()方法属于异步式加载绑定,dom元素加载未完成之前,可以委托给...delegate() 方法来实现绑定操作。...第二个参数为 要绑定事件 详情,请翻阅delegate() 方法 ---- 效果如图返回按钮:

7.9K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    innerHTML导致事件失效bug

    在用innnerHTML形式添加元素之后,事件绑定失效,如下 document.body.innerHTML += 'xxx'; 其实就是: document.body.innerHTML = (document.body.innerHTML...+ 'xxx'); 把原本元素摧毁之后重建一个加上'xxx'新元素,所以旧元素handler也被重置(又或着是说丢失)了!...body元素内容变了,DOM元素结构已经变了 那么之前通过 var oBtn=document.getElementById('btn'); 获取oBtn在当前DOM树中已经不存在了,这点我们可以通过在...document.body.innerHTML+=str; var _oBtn_=document.getElementById('btn'); console.log(oBtn.onclick); //之前绑定事件还存在...虽然在DOM树中不存在了,但是对象还在函数体中,并没有被GC掉,所以oBtn.onclick还能正常运行 但点击行为触发是基于DOM树结构中元素,故浏览器中事件也称为DOM事件 既然元素都不在

    1.3K20

    js事件

    (); 7.JS值类型:String,Number,Boolean,Null,Object,Function 8.JS字符型转换成数值型:parseInt(),parseFloat() 9.JS...中数字转换成字符型:(""+变量)10.JS取字符串长度是:(length) 11.JS字符与字符相连接使用+号. 12.JS比较操作符有:==等于,!...=不等于,>,>=,<.<= 13.JS中声明变量使用:var来进行声明 14.JS判断语句结构:if(condition){}else{} 15.JS循环结构:for([initial expression...HTML: 51.当超链和ONCLICK事件都有时,则老版本浏览器转向a.html,否则转向b.html.例:<a href="a.html" onclick......多重继续. 73.JSself指的是当前窗口 74.JS中状态栏显示内容:window.status="内容" 75.JStop指的是框架集中最顶层框架 76.JS中关闭当前窗口:

    10.8K110

    Js 事件委托(事件代理)

    一、概述 事件委托,又叫事件代理。事件委托就是利用事件冒泡,只指定一个事件处理程序,就可以管理某一类型所有事件。 例子:有三个同事预计会在周一收到快递。...这里其实还有2层意思: 第一,现在委托前台同事是可以代为签收,即程序中现有的dom节点是有事件; 第二,新员工也是可以被前台MM代为签收,即程序中新添加dom节点也是有事件。...二、为什么是使用事件委托 一般来说,dom需要有事件处理程序,我们都会直接给它设事件处理程序就好了,那如果是很多dom需要添加事件处理呢?...,这就是为什么性能优化主要思想之一就是减少DOM操作原因;如果要用事件委托,就会将所有的操作放到js程序里面,与dom操作就只需要交互一次,这样就能大大减少与dom交互次数,提高性能; 每个函数都是一个对象...三、事件委托原理 事件委托利用事件冒泡原理,将事件绑定到父级元素上,当点击子元素时,通过事件冒泡将事件传递到父级元素。  四、总结: 那什么样事件可以用事件委托,什么样事件不可以用呢?

    11.4K30

    js动画事件_JavaScript事件

    js之动画事件 首先,动画事件主要包括以下三个animationstart,animationiteration和animationend事件,下面做简单分别介绍。...animation主要有6个属性,分别来设置动画呈现出来哦效果,这个在我另一篇文章中有介绍,我这边简单展示一下。...animation:name duration timing-function delay iteration-count direction; 分别是:动画名称 动画持续事件 动画运行速度曲线 动画开始时运行时间...下面一段代码讲述是采用监听动画开始,动画再次播放和动画结束做出相应改变,这里用到addEventListener监听动画开始、动画持续播放、动画结束播放。 <!...如发现本站有涉嫌侵权/违法违规内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

    18.4K10

    加载方法_JS加载

    ==c2); // true 同一个类加载器器,加载同名类,第一次加载加载类会缓存到类加载缓存,再次加载直接在缓存读取,两次加载是同一个类 //直接获取类加载器...} } 在应用程序中,默认我们获取上下文类加载器、类型对象getClassLoader都是采用同一个应用程序类加载器,类在第一次被加载后会缓存到类加载缓存中,由于是同一个类加载器此时同名类不能被多次加载...,且应用程序类加载器只能加载classpath下类。...如果我们想加载自定义路径下类,需要用到自定义类加载器,可以去指定路径下加载类,且通过创建多个类加载器对象,加载同名类相互隔离,也就是说同名类可以被多个自定义类加载器对象加载。...,第二次是在类加载缓存加载 结果两次加载是同一个 c1.newInstance(); //会初始化 c2.newInstance(); //不会初始化

    5.9K10

    Js脚本异步加载

    在浏览器中网页加载中 javascript 加载 和 执行会默认阻塞 DOM 加载和页面的渲染。 因此,在编写代码时候我们往往将 script 标签放到 body 最后面。...当然,也可以通过异步创建 script 标签方式来实现 js异步加载。 只是,这些都是通过绕路方式实现。 如何让脚本本身不阻塞页面(异步)来加载,是一个常态化需求。....js 和 example2.js 脚本会在 DOM 渲染时候同步下载,并不会阻塞 DOM 加载。...脚本下载完成之后,执行时机应该是在 DOMContentLoaded 事件之前 example1.js 里面的代码会先于 example2.js执行。...defer下载独立,但是执行会在 DOMContentLoaded 事件之后;async 下载和执行都是独立,和其它脚本以及 DOM 加载和解析都无关。

    9.1K20

    Java加载js

    Android 中可以通过webview来实现和js交互,在程序中调用js代码,只需要将webview控件支持js属性设置为true Android(Java)与JavaScript(HTML)交互有四种情况...脚本设置 Android(Java)与js(HTML)交互接口函数是: mWebView.addJavascriptInterface(getHtmlObject(), "jsObj");     /...)代码 js(HTML)访问Android(Java)端代码是通过jsObj对象实现,调用jsObj对象中函数,如: window.jsObj.HtmlcallJava() (3) Android(...Java)访问js(HTML)代码 Android(Java)访问js(HTML)端代码是通过loadUrl函数实现,访问格式如:mWebView.loadUrl("javascript: showFromHtml..." /> 2) Android(Java)调用js(HTML)时,使用mWebView.loadUrl("javascript: showFromHtml()");函数需在UI线程运行,因为mWebView

    8.8K80

    js事件(event)

    比如说:他可以感觉到用户是否点击(click)了页面、鼠标是否进入了页面的某个元素上面(mouseover或mouseenter)、鼠标是否离开了网页(mouseout或mouseleave)、浏览器是都加载完了页面上资源...,相当于文档中鼠标的坐标; target事件源;事件概念:事件最终发生在页面的那个元素上; 事件源和事件传播是息息相关 事件传播包括:冒泡和捕获;事件传播是浏览器在处理事件行为机制,冒泡阶段或者捕获阶段...;当你在一个form表单里点击提交按钮时网页会产生一个行为病刷新网页,当你网页上滚动鼠标滚轮时候,页面的滚动条会滚动等等;这些都叫事件默认行为,如果想把这些默认行为取消了,相应js代码如下: a.onclick...{ //在这里可以加一些代码,实现自定义右键菜单; return false //系统自带右键菜单就失效了 } Form.onsubmit = function(){return false;}//...事件委托: 事件委托是利用事件传播机制,通过判断事件源来实现,是一种高性能事件处理方式。对事件委托好处和概念详见《高程3》第402页; 我们通过一个简单示例来看看事件好处。

    6.8K30

    JS事件

    想要知道这些事件是在什么时候进行调用,就需要了解一下“事件流”概念。 事件事件流描述就是从页面中接收事件顺序。...而早期IE和Netscape提出了完全相反事件流概念,IE事件流是事件冒泡,而Netscape事件流就是事件捕获。...绑定方式有如下两种 行内绑定(内联模型): 通过在JS中选中某个节点,然后给节点添加onclick属性 "btnClick()">按钮 function btnClick(){...console.log("hello"); } script> 复制代码 动态脚本: 通过在JS中选中某个节点,然后给节点添加onclick属性 "btn">按钮 var btn =...定义了一些新事件,比如键盘事件,还可以自定义事件。 自定义事件 自定义事件不是由DOM原生触发,它目的是让开发人员创建自己事件

    8.3K20

    js鼠标事件

    页面加载事件(onload),鼠标双击事件(ondbclick) window.onload=function(){                 //绑定元素,执行对应事件 鼠标双击(ondblclick...(){                     alert('我是双击显示');                 }             } 鼠标摁下(onmousedown)事件(摁下就执行,鼠标无需抬起...                document.getElementById('d4').onmouseup=function(){                     alert('鼠标抬起提示...(){                     alert('鼠标移动提示');                 }             } 鼠标移入(onmouseover)事件             ...,移入事件需要移入到指定对象内才执行事件

    18.2K40

    js滚动加载(无限加载)(转)

    实现无限分页过程大致如下: 1 视窗滚动到底部 2 触发加载,添加到现有内容后面。 因此,可能会出现两种情况: 1 当页面的内容很少,没有出现滚动条。 2 当页面的内容很多,出现了滚动条。...针对这两种情况,需要理解几个概念: scrollHeight即真实内容高度; clientHeight比较好理解,是视窗高度,就是我们在浏览器中所能看到内容高度; scrollTop是视窗上面隐藏掉部分...实现思路: 1 如果真实内容比视窗高度小,则一直加载到超过视窗 2 如果超过了视窗,则判断下面隐藏部分距离是否小于一定值,如果是,则触发加载。(即滚动到了底部)

    17.5K20

    js事件大全

    一般事件 事件 浏览器支持 描述 onClick IE3|N2|O3 鼠标点击事件,多用在某个对象控制范围内鼠标点击 onDblClick IE4|N4|O 鼠标双击事件 onMouseDown...onMouseMove IE4|N4|O 鼠标移动时触发事件 onMouseOut IE4|N3|O3 当鼠标离开某对象范围时触发事件 onKeyPress IE4|N4|O 当键盘上某个键被按下并且释放时触发事件...onMove IE|N4|O 浏览器窗口被移动时触发事件 onResize IE4|N4|O 当浏览器窗口大小被改变时触发事件 onScroll IE4|N|O 浏览器滚动条位置发生变化时触发事件...onStop IE5|N|O 浏览器停止按钮被按下时触发事件或者正在下载文件被中断 onUnload IE3|N2|O3 当前页面将被改变时触发事件 表单相关事件 事件 浏览器支持 描述...元素完成需要显示内容后触发事件 onStart IE4|N|O 当Marquee元素开始显示内容时触发事件 编辑事件 事件 浏览器支持 描述 onBeforeCopy IE5|N|O 当页面当前被选择内容将要复制到浏览者系统剪贴板前触发事件

    3.8K10

    JS 事件循环

    ,脚本执行,事件处理等 其包含线程有:GUI 渲染线程(负责渲染页面,解析 HTML,CSS 构成 DOM 树)、JS 引擎线程、事件触发线程、定时器触发线程、http 请求线程等主要线程 关于执行中线程...: 主线程:也就是 js 引擎执行线程,这个线程只有一个,页面渲染、函数处理都在这个主线程上执行。...工作线程:也称幕后线程,这个线程可能存在于浏览器或js引擎内,与主线程是分开,处理文件读取、网络请求等异步事件。...宏任务主要包含:script( 整体代码)、setTimeout、setInterval、I/O、UI 交互事件、setImmediate(Node.js 环境) 微任务主要包含:Promise、MutaionObserver...、process.nextTick(Node.js 环境) setTimeout/Promise 等API便是任务源,而进入任务队列是由他们指定具体执行任务。

    15.4K10
    领券