window.addEventListener("load", function() { // http://www.javascriptkit.com/javatutors/copytoclipboard.shtml var page_content = document.getElementById('page_content'); // On a 'dblclick' inside the Sql-Query, select and copy Sql-Statement to Clipboard page_content.addEventListener('dblclick', function(e) { // dblclick, mouseup var e = e || event // equalize event object between modern and older IE browsers var target = e.target || e.srcElement // get target element mouse is over if (target.className.indexOf( 'sql_query') != -1) { // the css-class may contain more than 1 class selectElementText(target); // select the element's text we wish to read var copysuccess = copySelectionText(); // copy to clipbord if (copysuccess) { // this does not work // showtooltip(e); } } }, false ); function selectElementText(el) { var range = document.createRange(); // create new range object range.selectNodeContents(el); // set range to encompass desired element text var selection = window.getSelection(); // get Selection object from currently user selected text selection.removeAllRanges(); // unselect any user selected text (if any) selection.addRange(range); // add range to Selection object to select it } function copySelectionText() { var copysuccess=false; // var to check whether execCommand successfully executed try { copysuccess = document.execCommand("copy"); // run command to copy selected text to clipboard } catch(e) { copysuccess = false; } return copysuccess } });