使用Jquery使用单个链接调用不同的函数

时间:2009-05-29 06:07:09

标签: javascript jquery html

我想使用单个href链接来调用不同的函数。

在第一次单击时,它应该调用first_function(),在第二次单击时它应该调用second_function。
类似于使用相同的链接在两个函数之间切换。建议最好的方法。

  

Jquery代码:

$(function() {

 var IntervalId;

 function first_function() {
  //code goes here
 }; 

 function second_function(){  
  //code goes here
 }  

$("#link2").click((function(){
second_function();
}));

$("#link1").click((function(){
first_function();
}));

});
  

Html代码:

<a href="javascript:void(0);" id="link2">Call function2</a>
<a href="javascript:void(0);" id="link1">Call function1</a>

3 个答案:

答案 0 :(得分:4)

  

“喜欢使用相同的链接在两个函数之间切换。”

$("#link1").toggle(
 function first_function() {
  // Code goes here 
 },
 function second_function(){  
  // Code goes here 
 }  
);

来自toggle(fn1, fn2, [fn3, [fn4, [...]]])上的jQuery文档:

  

每隔一次点击在两个或多个函数调用之间切换。

答案 1 :(得分:0)

最简单的方法是

var performFirstAction = true;

$(function() {

 function first_function() {
  // Code goes here 
 } 

 function second_function(){  
  // Code goes here 
 }  

 $("#link1").click(function(){
  if(performFirstAction) {
    first_function(); performFirstAction = false; }
  else {
    second_function(); performFirstAction = true; }
 });
});

或使用切换为Tomalak提及并且好,

$(function() {

 function first_function() {
  // Code goes here 
 } 

 function second_function(){  
  // Code goes here 
 }  

 $("#link1").toggle(
   first_function,
   second_function
 );
});

答案 2 :(得分:0)

使用Javascript:

$(document).ready(function() {
    function first_function() {
        // Code goes here 
    }; 

    function second_function(){  
        // Code goes here 
    }

    $("#link").toggle(first_function, second_function);
});

HTML:

<!-- I'm pretty sure that <a> isn't the right tag for this. -->
<button id="link">Toggle between the two functions.</button>