2012-07-26 55 views
1

是否有可能通過javascript觸發點擊錨鏈接(而不是Jquery - 長篇故事!)。用JavaScript(不含jQuery)觸發錨鏈接上的鏈接?

我們想要傳遞一個錨鏈接的id到一個函數,它會觸發點擊,但不知道如何觸發沒有jquery的點擊!

感謝

+0

[有可能通過JavaScript觸發鏈接(或任何元素)的點擊事件?](http://stackoverflow.com/questions/143747/is-it-possible-to-trigger-a-鏈接或任何元素點擊事件通過javasc) – 2012-07-26 15:36:34

+0

閱讀此文章:http://stackoverflow.com/q/902713/870729 – 2012-07-26 15:37:08

回答

1

在某些瀏覽器,你可以這樣做document.getElementById(myelement).click()(我相當肯定這只是IE的情況下,但它可能是更可用)。

因爲它是你想點擊一個<a>標籤,它的默認點擊事件可以被很容易模仿:添加addEventListener或任何其他活動比

function clickLink(id) { 
    var tag = document.getElementById(id); 
    if(tag.onclick) { 
     var def = tag.onclick(); 
     if(!def) return false; // event cancelled by handler 
    } 
    window.location.href = tag.getAttribute("href"); 
} 

請注意,這並沒有考慮到事件.onclick屬性和onClick屬性,並且如果用戶使用Ctrl +單擊或MMB單擊,它不會打開新的窗口/選項卡。

+0

如果'href'是相對於當前頁面?將'window.location.href =「/index.php」;'仍然工作? – Cyrille 2013-01-15 09:10:58