HTML belgelerinde metin seçerken, bir DOM öğesinin içinden başka bir öğeye, muhtemelen yol üzerindeki diğer öğelerin üzerinden geçmeye başlayabilirsiniz. DOM API'yi kullanarak, seçim aralığını, seçilen metinleri ve hatta seçilen tüm DOM öğelerinin ana öğesini (kullanılmış tarayıcıya dayalı olarak commonAncestorContainer veya parentElement() kullanarak) almak mümkündür. Ancak, bunların hepsini içeren tek ana öğeyi almanın dışında seçilen metinlerin öğelerini içeren tüm öğeleri listeleyebileceğinin farkında olmamın bir yolu yoktur. Ebeveynin kullanılması ve çocuk düğümleri arasında geçiş yapmak, bu ebeveynin içinde seçilmeyen başka kardeşler olabileceğinden bunu yapmayacaktır.Seçilen metinler için tüm DOM blok öğelerini al
Seçili metinleri içeren tüm öğeleri alabilmemin bir yolu var. Temel olarak blok elemanlar (p, h1, h2, h3, ... vs) almakla ilgileniyorum ama tüm elementleri elde etmenin bir yolu varsa, o zaman bunlardan geçip neyi elde etmek için onları filtreleyebileceğime inanıyorum. istemek. Herhangi bir fikri ve öneriyi memnuniyetle karşılıyorum.
Teşekkür ederiz.
Söylediğiniz mükemmel çözüm değil, ama nasıl yapılacağı konusunda bana bir fikir verdi. Bu nedenle, ihtiyacımın en doğru cevabı olarak seçtim. Bunu gerçekten takdir ediyorum. – cria
Bu iyi bir cevaptır, ancak IE <9'da çalışmayacaktır. Seçim, 'selection.getRangeAt (0);' da (seçimin 'rangeCount' özelliği kullanılarak en kolay şekilde) çağırılmadan önce var olduğunu kontrol ederek yapabilir. –
Adreslemediğim bir sürü tuhaflık var, bu sadece doğru yönde ilerlemeye başlıyor. Kitaplığınız gerçekten işlemek için 22k sıkıştırılmamış javascript gerektirir ve gerekirse ona ihtiyacım var. –