2014-12-27 41 views
0

我有如下定義的文本方面的工作:DOM ONSELECT無法正常工作

<textarea id="description"></textarea>

我想,當一些文字是由用戶選擇的檢測和onselect似乎完美這個。它完美的W3Schools的例子,我得到它的工作爲:

<textarea id="description" onselect="alert('testing');"></textarea>

但是,當我改變了我自己的功能,沒有任何反應。 document.getElementById("description").addEventListener("onselect", getSelection("description"));

這可是在執行頁面加載和什麼也不做,當我選擇文本:

我有這樣的嘗試使用。

我只是簡單的東西在函數中試圖讓它工作,我測試了我的動作選擇代碼,這很好。我無法讓它運行一個選擇事件。這裏是我的測試getSelection功能。

function getSelection(ele) 
{ 
    var ele = document.getElementById(ele); 

    var txt = "Text Selected"; 

    console.log(txt); 
} 

任何想法?似乎很少有關於onselect的信息,大多數人認爲它是用於選擇標籤的資源。

回答

2

您必須傳遞函數的引用,現在您只需使用()即可立即調用該函數。此外,要使用addEventListener添加事件,您必須使用select而不是onselect

document.getElementById("description").addEventListener("select", getSelection); 
 

 
function getSelection(event) 
 
{ 
 
    var ele = event.target; 
 

 
    var txt = "Text Selected"; 
 

 
    alert(txt); 
 
}
<textarea id="description"></textarea>

+0

完美的作品非常感謝你! – Arcana 2014-12-27 19:27:06