js自定义函数调用自定义函数

JavaScript012

js自定义函数调用自定义函数,第1张

自定义函数就是说自己写的函数,只有自己调用,或是自己共享给别人后别人才可以调用的。也可以理解为私有函数。

function a(){alert(1)}  //定义一个函数,名字是a。

函数调用,就是让函数执行。

a()  //函数名字后面加一对小括号就可以执行了, 页面中将弹出一个 1

这个是不可以的。

你是不是使用了setTimeout函数双线程运行函数,然后在运行该函数的时候,过快的重复进行操作,然后便出现了运行错误呢?

这个现象我有一套解决方案,就是动态地改变触发,在setTimeout运行的那个自定义函数一开始,把相关的触发换为空,比如有一个onclik="fun()",那么在这个自定义函数中开始写上一行:XXX.onclick=function(){}这样的话,就不会再被过快的操作触发它了。然后要记得在这个自定义函数的末尾写是一行:XXX.onclik=function(){fun()}才可以,否则一但运行一次之后,这个触发就再不存在了。

或许会有更好的办法来解决这个问题,但现在我一直没有找到。如果有后来的朋友能有更妙的招,我也在这里好好学习一下了。

如果你只是想让它提示正在运行,那么根据我上述的方法,也就有了解决方案。

我想,如果你只是想让它提示正在运行,而不用触发机制就提示相关的提示框的话,只要在这个函数的开始写上:alert('正在运行')就可以了。

如果你想通过点击等方法实现,比如用户过快地按这个按钮的话,你就可以不写那个空onclick函数,而是写上:XXX.onclick = function(){alert('正在运行!')},就把问题搞定了。

吼吼!

不知道我所说的是不是你正面临的问题,不过这个问题可是困扰了我好长时间,所以印象深刻,看到你的问题就首先猜到了这种情况,如果不是这个现象的话,欢迎把你的问题再清楚地描述一下,发个追问。

function showDiv(callback){

  $("#div1").show()

  callback($("#div1"))

}

showDiv(function($div){

  $div.text("hello world")

})