我想实现类似.one()
/http://api.jquery.com/one/的东西与myYandexMap.events.add('click', function(e){})
. 这意味着,要在click上有一个函数,它只会运行一次,或者我可以用其他函数替换它。
我试图在函数的末尾删除内部函数,但我不知道如何做到这一点。这就是我所做的
yxMap.events.add('click', function (e){ add_wp_map_click(e, num, color) });
function add_wp_map_click(e, num, color){
...
yxMap.events.remove('click', function (e){ add_wp_map_click(e, num, color) });
}
您也可以尝试使用.once
方法:
yxMap.events.once('click', handler, context);
您必须删除相同的处理程序,重新声明函数不起作用,因为它是javascript (function() {} === function() {} -> false
)的两个不同函数。
试题:
var clickHandler = function(e) {
yxMap.events.remove('click', clickHandler);
add_wp_blah();
};
yxMap.events.add('click', clickHandler);