2016-04-04 44 views
1

我有一個包含一個鏈接中的文本股利,如:禁用點擊事件,而選擇文本

<a href="http://www.google.de"><div>123456890</div></a> 

這個鏈接,如果我點擊它應該工作。但我也希望能夠選擇數字,以便我可以將它們複製到剪貼板。

如何將我的網站上的所有鏈接歸檔?

(一個很好的補充是,如果我可以用雙擊選擇。)

回答

1

其實你可以選擇一個link,如果你選擇之前和之後,但你不能很容易地選擇鏈接文本的一部分!因爲選擇一個文本是mousedownmouseup的組合。但我有一個解決方案,使用mouseenter事件來選擇文本。是這樣的:

jQuery.fn.selectText = function(){ 
 
    var doc = document; 
 
    var element = this[0]; 
 
    console.log(this, element); 
 
    if (doc.body.createTextRange) { 
 
     var range = document.body.createTextRange(); 
 
     range.moveToElementText(element); 
 
     range.select(); 
 
    } else if (window.getSelection) { 
 
     var selection = window.getSelection();   
 
     var range = document.createRange(); 
 
     range.selectNodeContents(element); 
 
     selection.removeAllRanges(); 
 
     selection.addRange(range); 
 
    } 
 
}; 
 

 
$('a').mouseenter(function() { 
 
    $('#target').selectText().focus(); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<a id="target" href="http://www.google.de"><div>123456890</div></a>

(在你的文字鼠標,然後右擊複製,那麼你可以點擊鏈接!)