当事件处理函数如下所示注册时:
element.onload = function()
{
var something = Selector("identifier", "inline", 1).FadeIn("inline", 1);
CenterElement(something);
};
有没有办法在从另一个处理函数内部开始执行时停止执行?让处理程序函数看起来像这样:
another.onclick = function()
{
//Cancel the execution of the above function here
document.getElementById("start").innerHTML = "Start Slideshow";
this.FadeOut();
};
Selector
返回一个与问题本身无关的特殊包装器对象,因此省略了实现。
众所周知,可以通过将undefined
分配给处理程序变量来阻止执行处理程序函数,但是如果它已经开始执行则如何阻止它?
答案 0 :(得分:0)
你在这里错过了一个重要的概念。
在javascript中,只有一个执行线程。虽然您可能认为onclick
在执行onload
时被调用,但这很明显。
我不知道你正在使用什么框架,但在jQuery中你可以做到以下几点:
another.onclick = function()
{
//Cancel the execution of the above function here
Selector("identifier", "inline", 1).stop();
// ...other stuff
};