2013-05-31 210 views
1

我試圖使用jQuery來實現的超鏈接手動點擊事件,但我沒有得到該怎麼辦呢觸發超鏈接點擊事件..爲什麼我無法通過代碼

這裏我的樣品小提琴鏈接[1]:http://jsfiddle.net/akki/XyVDd/1/

<input type="text" class="example" id="opval" value="back"> 
<a id="sub_name" href="http://www.google.co.in">abc</a> 
$(document).ready(function(){ 
    if($('#opval').val() =='back') { 

    $('#sub_name').click(); 
    //$('#qwe').find('a').trigger('click'); 
} 
    $('#sub_name').click(function(){ 
    alert(hi) 
    }); 
}); 
+2

這是一項安全措施。同時減少廣告和搜索引擎優化的點擊欺詐 – Blazemonger

+2

使用jQuery可以模擬鏈接上的點擊事件,但它不會替換用戶單擊。它將調用已註冊的事件處理程序,但可能不會執行與該元素相關的默認操作 –

回答

1

幾個小問題在這裏: 1.你不是已經jQuery的加載你的提琴。 2.您需要在您的alert()報價中有"hi"

但主要的是你在點擊處理程序被連接之前觸發了點擊事件。只需將處理程序代碼移至點擊觸發器之前即可:

$(document).ready(function(){ 
    $('#sub_name').click(function(){ 
    alert("hi"); 
    }); 
    if($('#opval').val() =='back') { 
    $('#sub_name').click(); 
    } 
}); 
相關問題