ng-click
和ng-href
指令一起使用時將首先執行點擊功能。在以下示例中,將阻止導航到Google,並顯示警報。當點擊新標籤中的打開鏈接時,ng-click不起作用
<a ng-href='http://google.com' ng-click="click($event)">Link</a>
$scope.click = function (event) {
event.preventDefault();
alert('click has been trigerred');
}
只有當用戶使用鼠標左鍵單擊鏈接時,這將工作。如果用戶嘗試在新選項卡中打開鏈接,則不會觸發點擊事件。在某種程度上,它似乎是正確的,因爲它不嚴格地說「點擊」,但是有沒有任何Angular指令用於處理新選項卡中的打開鏈接?
UPDATE:
我不想以編程方式打開新的標籤頁,但處理由用戶打開新的標籤頁的事件。
如果要防止右鍵單擊,則需要覆蓋默認的上下文菜單行爲。也許這可以幫助http://stackoverflow.com/questions/15731634/how-do-i-handle-right-click-events-in-angular-js –
@ Stuff_H4pp3nz我很抱歉模糊我的問題。我想處理用戶打開新選項卡的事件,而不是阻止它。 – Landeeyo
Hi @Landeeyo,你最終能夠解決這個問題嗎?我面臨同樣的困境。我希望用戶能夠決定是否要單擊或rmc並打開新選項卡。 – Starceaker