我有PHP(demo.php)和JavaScript文件(demo.js)。我有一个函数应该在服务器上创建和对象,返回它的密钥,使用它来创建它的路径,然后创建一个URL。但是,一次只能激活一个URL,因此重要的是这只发生一次。但是,它发生了多次,并经常发送给我一个退休的链接。创建的最后一个链接始终有效,但我想防止必须查找此错误生成的链接。
我的PHP(demo.php)非常像:
<div id="svg_graph">
// just a graph (code is irrelevant)
</div>
<div id="prompt">
<a id="startup" class="button"> Create New Object </a>
</div>
我的JS看起来像:
function funcA(){
$("#svg_graph").mousedown(function(){
$(this).mousemove(function(e){
// irrelevant code
});
});
$("#svg_graph").mouseup(function(){
// $("a#startup").bind("click",function(){ // doesn't work either
$("a#startup").click(function(){
// Supposed to prevent multiple clicks, but doesn't
$("a#startup").unbind("click");
funcB();
});
$(this).unbind("mousemove");
});
}
// This function is being called more than once but I don't know why
function funcB(data){
var obj = createObj(data);
var url = "some predefined url" + obj.key;
window.location.replace(url);
)
答案 0 :(得分:0)
现在,您应该使用.off()
,但.unbind()
应该工作。
如果确实是解除绑定问题,那么你可能会更幸运:
$("#svg_graph").off('mouseup').on('mouseup', function() {
$("a#startup").off('click').on('click', function() {
funcB();
return false; // probably
});
});