Javascript 在两个函数之间切换

Javascript 在两个函数之间切换,javascript,d3.js,Javascript,D3.js,我打算通过另一个按钮在两个函数之间切换,该按钮将触发器的值设置为1,并让第二个函数运行。但它似乎不起作用。解决这个问题的办法是什么 <input type="button" value="Intersection Nodes" id="intersection" onclick="triggerbutton();"> var trigger=0; function triggerbutton(){ trigger=1; } node.on("click", fun

我打算通过另一个按钮在两个函数之间切换,该按钮将触发器的值设置为1,并让第二个函数运行。但它似乎不起作用。解决这个问题的办法是什么

<input type="button" value="Intersection Nodes" id="intersection" onclick="triggerbutton();">

var trigger=0;

function triggerbutton(){
       trigger=1;
}

node.on("click", function() { 
                if(trigger==0){
                    clickNode;
                }
                if(trigger==1){
                    clickNodeSpecial;
                }

var触发器=0;
函数triggerbutton(){
触发器=1;
}
node.on(“单击”,函数(){
如果(触发器==0){
点击节点;
}
如果(触发器==1){
单击无特殊项;
}

您可以将其与jPepper或首选库一起使用:

var trigger = 0;

_("#tb").on("click", function(e) {
    trigger = trigger == 0 ? 1 : 0;
});

_("#nb").on("click", function(e) {
    if (trigger == 0) 
        alert("trigger is 0");
    else
        alert("trigger is 1");        
});

如果要使用jQuery将单击事件绑定到节点,只需通过jQuery将另一个单击事件绑定到按钮即可

var trigger = 0;

$('#intersection').click(function(){
    trigger = 1;
});

$(node).click(function(){
    if( trigger ) {    
        //trigger = 1 function
    } else {    
        //trigger = 0 function    
    }
});

我不熟悉d3.js,但我会用jQuery/javascript这样做:

JSFIDLE演示

html
<button href='#' id='click_me'>Toggle Me</button>
var toggleDemo=function(){
var status=true;    
jQuery('#click_me').click(function() {

    onOff($(this));


    });

function onOff(el){
             /*
             * toggle
             */
            status = (status ? false : true);

            status
                    ? el.html('on')
                    : el.html('off');
}
}

toggleDemo();