前些时间有这么个需求,需要实现选中div里面的文字,选中了的文字可直接按ctrl+v(或者右键)实现黏贴操作。
html代码:
<div id="text" class="text">大家好!</div>
调用以下javascript方法,实现选择上面div中的内容:
1 selectText(“text”)
javascript代码:
1 function selectText(element) { 2 if (document.selection) { 3 var range = document.body.createTextRange(); 4 range.moveToElementText(document.getElementById(element)); 5 range.select(); 6 } else if (window.getSelection) { 7 var range = document.createRange(); 8 range.selectNode(document.getElementById(element)); 9 window.getSelection().addRange(range); 10 } 11 }
jquery方式:
1 function SelectText(element) { 2 var text = document.getElementById(element); 3 if ($.browser.msie) { 4 var range = document.body.createTextRange(); 5 range.moveToElementText(text); 6 range.select(); 7 } else if ($.browser.mozilla || $.browser.opera) { 8 var selection = window.getSelection(); 9 var range = document.createRange(); 10 range.selectNodeContents(text); 11 selection.removeAllRanges(); 12 selection.addRange(range); 13 } else if ($.browser.safari) { 14 var selection = window.getSelection(); 15 selection.setBaseAndExtent(text, 0, text, 1); 16 } 17 }