
正文
jquery代码反复执行,jquery循环语句怎么写
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
jquery中click事件的累加绑定,点击一次,执行多次
如何解决累加绑定:第一种方法是元素点击后删除,然后再动态创建一个元素,再添加点击事件。显然这个方式很麻烦。第二中方法是使用jquery的one()方法,为元素绑定一个一次性的事件处理函数,这个事件处理函数只会被执行一次。
在js标签内,在页面加载完成时,通过class(mypp)获得p元素对象,使用one()方法给对象绑定click点击事件,当p元素被点击时,执行function()方法一次。
用jQuery的方式 jQuery专门为此功能提供了一个函数one。这样写就能让click这个事件只执行一次。
经过多次反复痛苦的调试,发现是在点击编辑后调用的函数中绑定了添加的事件,当再次点击编辑时,会重复绑定,所以会出现触发多次的bug。解决方法就是在绑定之前先解绑。这样就可以解决了。
于是我查询了 jquery 中的事件监听,发现他本身的监听事件,是累加触发的,比如 你就会打印出1和2, 后者不会覆盖前者,而是多有事件都叠加在一起触发,这也就是为什么我点击一次触发好多次,越点击越多的罪魁祸首。
经调试发现,label标签中包裹input,而事件绑定在label标签中时,点击label区域,事件会执行两次。方案1:将原绑定于label的事件,直接绑定于input上。
相关问答
Q1: jquery事件为什么执行两次?
在页面中为一个元素绑定事件,事件执行后页面未刷新且元素还在,然后你再次点击,元素又被绑定个一次点击事件,这样第二次点击就会执行两次,以此类推。
因为有两个p元素,所以是两次。你选择的是p标签,点击时,所有的p标签都同时执行隐藏/显示,完成后每一个p标签都执行一次alert(alert执行了2次);。
这就是为什么它会执行两次,因为pageinit被调用了两遍。但是为什么js会加载两次呢?你看看最后的页面结构 跟你书写的完全不一样,多了个。
再执行外层的click事件响应。像你的这种情况应该是为两个并列的span加上click事件。如果你非要这样的话,也在可以里层的function结束时加上return false;来阻止事件冒泡,这样就外层的click事件都不会触发。
因为你的第二句,值是在程序里设置的,所以在程序里进行比较的时候不会出错,但你第一句,你是用读取到的值和你手动设置的值进去比较,容易出现多个空格 或少个空格 什么的情况,所以才会比较不出来。
Q2: jquery,点击一个节点,执行某一事件,再次点击,执行另一个事件,要能循环...
新建一个html文件,命名为test.html,用于讲解怎么让jquery事件执行一次。在test.html文件内,引入jquery.min.js库文件,成功加载该文件,才能使用jquery中的方法。
最近做项目为一个添加按钮绑定点击事件,很简单的一个事情,于是我按照通常做法找到元素,使用jquery的on()方法为元素绑定了点击事件,点击同时发送请求。完成后看效果,第一次点击没有问题。
toggle(fn, fn2, [fn3, fn4, ...])概述 每次点击后依次调用函数。如果点击了一个匹配的元素,则触发指定的第一个函数,当再次点击同一元素时,则触发指定的第二个函数,如果有更多函数,则再次触发,直到最后一个。
Q3: 使用jquery库,keyup被执行多次怎么解决
如何解决累加绑定:第一种方法是元素点击后删除,然后再动态创建一个元素,再添加点击事件。显然这个方式很麻烦。第二中方法是使用jquery的one()方法,为元素绑定一个一次性的事件处理函数,这个事件处理函数只会被执行一次。
设置一个全局变量,在滚动前设置一个特定值,在滚动完成后改变成另一个值。
火狐下您可以安装Firebug检查页面代码,错误部分会有提示。您可以在火狐社区了解更多内容。希望我的回答对您有所帮助,如有疑问,欢迎继续在本平台咨询。
可以用jQuery的one方法只执行一次。
focus() 方法触发 focus 事件,或规定当发生 focus 事件时运行的函数。提示:该方法通常与 blur() 方法一起使用。
Q4: JQUERY如何让同一个脚本内容在加载的时候执行一次,其他操作的时候再执...
1、新建一个html文件,命名为test.html,用于讲解怎么让jquery事件执行一次。在test.html文件内,引入jquery.min.js库文件,成功加载该文件,才能使用jquery中的方法。
2、如果是这个意思,给你个思路:你需要利用cookie在客户端写一个数据,然后页面执行js之前,检查cookie中的数据是否存在,如果存在就不执行,如果没有cookie中的数据,就执行该操作。js是每次页面加载都会被加载的。
3、其实目前就是按照次序执行完一次成功之后,再执行下一次。 问题在于你使用了同步模式,会卡住所有的界面操作。 建议使用异步模式,并提供出错处理函数,以进行异常处理。 同时界面使用进度条阻止用户有其它操作。
Q5: 为什么jquery中的回调函数callback会被执行两次?下面有具体代码
1、因为有两个p元素,所以是两次。你选择的是p标签,点击时,所有的p标签都同时执行隐藏/显示,完成后每一个p标签都执行一次alert(alert执行了2次);。
2、其实第一个a=0的原因是因为$.post函数使用的是异步请求的方法,$.post函数里的function,和test()底下的alert(a)是同时运行的,所以第一次alert的时候程序是并没有先经过$.post里面的a=2的。
3、在计算机程序设计中,回调函数,或简称回调(Callback),是指通过函数参数传递到其它代码的,某一块可执行代码的引用。
4、因为可以把调用者与被调用者分开,所以调用者不关心谁是被调用者。它只需知道存在一个具有特定原型和限制条件的被调用函数。
5、可选的 callback 参数是请求成功后所执行的函数名。其余主要方法描述 一个封装了的ajax函数,使用了回调函数 函数很简单,接收参数有三个 url是请求地址,data是请求参数,cellback是回调函数。
关于jquery代码反复执行和jquery循环语句怎么写的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。






