2010-10-25 87 views
5

我想單擊或雙擊<p>標記時選擇段落中的文本。不會突出顯示,就像使用鼠標創建選擇區域來選擇要選擇的文本一樣!點擊文字時,請選擇文字,就像「Ctrl + A」一樣?

我在頁面上有幾個段落和* .rar文件鏈接地址,當我點擊其中的一個時,我想選擇所有文本。我認爲文本框可以這樣工作,但我喜歡它在一個段落或鏈接標記。

有沒有辦法通過點擊另一個元素來選擇段落中的所有文本?

+1

嗯,這需要更多的上下文一點的更多信息,請 – Petah 2010-10-25 02:20:14

+1

。你在問一個文本編輯器嗎?一個WinForms應用程序?一個Web應用程序?一款iPhone應用程序? Android應用程序? – Yuliy 2010-10-25 02:20:56

+0

從它的聲音:你想能夠選擇段落文本。你已經可以做到這一點。 (哇,這很快就解決了。)但是,認真給我們提供更多信息。 – doppelgreener 2010-10-25 02:22:54

回答

7

下面是將選擇您傳遞給它的元素的內容的功能:

function selectElementContents(el) { 
    var range; 
    if (window.getSelection && document.createRange) { 
     range = document.createRange(); 
     var sel = window.getSelection(); 
     range.selectNodeContents(el); 
     sel.removeAllRanges(); 
     sel.addRange(range); 
    } else if (document.body && document.body.createTextRange) { 
     range = document.body.createTextRange(); 
     range.moveToElementText(el); 
     range.select(); 
    } 
} 

window.onload = function() { 
    var el = document.getElementById("your_para_id"); 
    selectElementContents(el); 
}; 
+0

完美!我認爲這是實現我的目標的另一種方式。非常感謝! – qinHaiXiang 2010-10-25 13:57:47

2

如果你正在談論JavaScript,請看Peter-Paul Koch的Introduction to Range(以其兼容性表格而聞名)。

+0

我很抱歉!它是關於網頁功能的。我在頁面上有幾個段落,並且當我點擊其中的一個時,我想選擇所有文本。 – qinHaiXiang 2010-10-25 02:35:57

+0

我已經嘗試使用文本框來保存文件鏈接地址,當我集中精力和選擇文本框中的文本。flashgot工作正常。但是當我取消選擇文本框時,flashgot仍然保持文件鏈接地址! – qinHaiXiang 2010-10-25 02:46:19

+0

range.selectNodeContents is undefined .. in chrome – SuperUberDuper 2015-03-26 10:25:25

0

您可以通過雙擊選擇整個段落。你爲什麼想改變它?

+0

是的,我很愚蠢。但是它是通過點擊另一個元素來選擇段落文本的方法,比如標題「h」tag!? – qinHaiXiang 2010-10-25 03:23:26

相關問題