jquery 结束方法问题

jquery 结束方法问题,第1张

1、如果终止一个函数的用return即可

function showStr(){

 改兄   alert('one')

    return

    alert('two')

    alert('three')

}

showStr()程序执行d出'one'便会终止

2、核腔袭在函数中调用别的函数,在被调用函数终止的同时也希望调用的函数终止

function funFirst(){

    alert('one')

    return false

    alert('two')

}

function funSecond(){

    if(!funFirst()) return

     alert('three')

}

funSecond()两个函数做了修改,funFirst中返回false,funSecond中对funFirst的返回值做了圆卜判断,这样终止funFirst的同时也能将funSecond终止,程序执行d出'three'便会终止。

首先你要理解一点,jQuery 的绑定事件是能够叠加的,比毁袭如对一个div 绑定的多次 blur 事件,在触发的时候 多个绑定在div 上的blur 事件都会执行;

<div id="demo'></div>

$( '#demo' ).bind( 'blur', function(){} )

$( '#demo' ).bind( 'blur', function(){} )

$( '#demo' ).bind( 'blur', function(){} )

比如以上对 demo 绑定了 3 次blur 事件,那么在触发blur 事件的时候 3 个都会执行;

想要只执行最后一次绑定的时间而忽视之前绑定的事件,就要在下一次绑定事件之前先解除原先绑定的事件,再绑定新的事件

<div id="demo'></div>

$( '#demo' ).bind( 'blur', function(){

$( '#demo' ).unbind( 'blur' ) //在执行完 blur 事件后解除绑定的事件或者在其他的地方解除绑定也行;

} )

原理说多了,其实楼主的代码改法很简单,

$('#b'+id1).bind('blur',function(){

$('body').append('<div id="test">执行到节点2</div>')

})

把这个事件绑定写到 click 外面去,然后在 click 里面写上模拟 blur 事件的代码就可以了,这样就保证了blur 事件只绑定了一次,而不是在每次click 之后叠加绑定了新的事件

$("a.reply").click(function(){

//点击'回复'触发

//两处append调用都是供测试用,项目中为对应处其他御伏功能代码

$('body').append('<div id="test">执行到节点1</div>')

$('#b'+id1).blur()// 执行绑定的 blur 事件

return false

})

$('#b'+id1).bind('blur',function(){

$('body').append('<div id="test"纤拆兄>执行到节点2</div>')

})

jquery each 和for跳出循环终止本次循环的方法:

在jquery中的each循环中是默认要写回调函数的返回值的,一般设置为false就默认跳出循环了。

比如:

var toReturn

$.each(someArray, function(i) {

$('body').append('->'+i+'<br />')

if(someArray[i] == word) {

toReturn = someArray[i]

return false//这里找到困烂toReturn后就直接返回,不再继续循环。

}

})

return toReturn //返回找到的对象。

在一般的for循汪信漏环里面,直坦渣接利用break即可。

比如:

for (i = 0i <10i++) {

if (i === 3) {

break//这里强制退出循环

}

text += "The number is " + i + "<br>"

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8199203.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存