1: Apakah objek Julat
Julat merujuk ke Kawasan dalam dokumen html, contohnya, pengguna menyeret kawasan yang dipilih dengan tetikus, seperti yang ditunjukkan di bawah:
Melalui objek Julat, anda boleh mendapatkan kawasan tersebut dipilih oleh pengguna, atau tentukan kawasan yang dipilih Dapatkan titik permulaan dan titik akhir Julat, ubah suai atau salin teks di dalam, walaupun html. Fungsi ini sering digunakan dalam pembangunan editor teks kaya.
Dua: Dapatkan pilihan semasa
Disebabkan isu keserasian, adalah perlu untuk membezakan pelayar IE,
var selection, range; if (window.getSelection) { //现代浏览器 selection = window.getSelection(); } else if (document.selection) { //IE selection = document.selection.createRange(); } //Range对象 range = selection.getRangeAt(0);
Tiga : atribut julat
> collapsed 如果范围的开始点和结束点在文档的同一位置,则为 true,即范围是空的,或折叠的。 > commonAncestorContainer 范围的开始点和结束点的(即它们的祖先节点)、嵌套最深的 Document 节点。 > endContainer 包含范围的结束点的 Document 节点。 > endOffset endContainer 中的结束点位置。 > startContainer 包含范围的开始点的 Document 节点。 > startOffset startContainer中的开始点位置。
4: operasi julat
//选中区域的文字 var text = range.toString(); //选中区域的Element元素 var elem = range.commonAncestorContainer; if(elem.nodeType != 1){ elem = elem.parentNode; } //选中区域的html var span = document.createElement('SPAN'); span.appendChild(range.cloneContents()); //选区是否为空 var isSelectionEmpty = false; if (range.startContainer === range.endContainer) { if (range.startOffset === range.endOffset) { isSelectionEmpty = true; } }