2013-11-04 69 views
1

觸發點擊功能我有一個非常基本的點擊功能,做一些功能:在另一個函數

$('#one').click(function() { 
    slider(); 
    $(this).css({'background-image':'url(img/circle_c.png)'}); 
    $('#two, #three').css({'background-image':'url(img/circle.png)'}); 
    $content.cycle(0); 
    return false; 
}); 

現在我想觸發另一個點擊此功能點擊功能。我的意思是一旦我按另一個點擊功能,目前看起來像這樣:

$mario.on('click', this, function() { 
    var l = 0, 
    row = 8; 
    $(this).addClass('active'); 
    // and some other functions 
}); 

第一個點擊功能也會觸發。你們中的任何人都知道如何做到這一點。我猜想複製和粘貼#one clickfunction的內容並不是祕密。

乾杯

回答

6

你可以使用trigger

$('#one').trigger('click'); 

所以你完整的代碼會看起來像這樣

$mario.on('click', this, function() { 
    var l = 0, 
    row = 8; 
    $(this).addClass('active'); 
    $('#one').trigger('click'); // < -- trigger click for #one 
    // and some other functions 
}); 
+0

或'$('#one')。click()'; –

+0

@ClaudioRedi這個工作正常,但不幸的是它不會觸發'#one'單擊中的'$ content.cycle()'函數。不知道爲什麼 – supersize

+0

@超級大小:控制檯上的任何js錯誤? –

0

出來弄破第一次點擊處理代碼到一個函數:

function swapImages() { 
    slider(); 
    $('#one').css({'background-image':'url(img/circle_c.png)'}); 
    $('#two, #three').css({'background-image':'url(img/circle.png)'}); 
    $content.cycle(0); 
    return false; 
} 

並參考它在兩個地方:

$('#one').click(swapImages); 

$mario.on('click', this, function() { 
    var l = 0, 
    row = 8; 
    $(this).addClass('active'); 

    swapImages(); 

    return false; 
}); 
0

你有兩個選擇。您可以使用trigger方法。

$("#one").trigger('click'); 

或者您可以使用沒有參數的click方法。示例here

$("#one").click();