Rumah >hujung hadapan web >Soal Jawab bahagian hadapan >Apakah penggunaan julat dalam javascript

Apakah penggunaan julat dalam javascript

藏色散人
藏色散人asal
2022-01-18 11:44:142874semak imbas

Objek julat JavaScript merujuk kepada kawasan dalam dokumen html dan kaedah penggunaannya adalah seperti "var elem=range.commonAncestorContainer;if(elem.nodeType != 1){...}" .

Apakah penggunaan julat dalam javascript

Persekitaran pengendalian artikel ini: sistem Windows 7, versi javascript 1.8.5, komputer Dell G3.

Apakah penggunaan julat dalam javascript?

Penggunaan objek JS JS

1: Apakah objek Julat

Julat merujuk ke Kawasan dalam dokumen html, contohnya, pengguna menyeret kawasan yang dipilih dengan tetikus, seperti yang ditunjukkan di bawah:

Apakah penggunaan julat dalam javascript

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;
   }
}

Pembelajaran yang disyorkan: "tutorial asas js "

Atas ialah kandungan terperinci Apakah penggunaan julat dalam javascript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:apa itu htmlparserArtikel seterusnya:apa itu htmlparser