Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Как добавить текущее выделение в Range? (https://javascript.ru/forum/dom-window/61673-kak-dobavit-tekushhee-vydelenie-v-range.html)

Decode 01.03.2016 19:14

Как добавить текущее выделение в Range?
 
Собственно моя попытка:
<!doctype html>
<html>
<head>
	<meta charset="utf-8" />
	<title></title>
	<!--<script src="http://code.jquery.com/jquery-latest.min.js"></script>-->
</head>
<body>
	<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Omnis, alias cum voluptatem pariatur quisquam nemo minus quasi eum dolores distinctio saepe nam facilis esse quae vitae, eos sed a, sapiente.</p>

	<script>
		document.addEventListener('mouseup', function(event) {
			var sel = window.getSelection(), rng, elem;

			if ( event.which != 1 || !sel.toString().length ) return;

			elem = document.createElement('span');
			elem.style.backgroundColor = 'blue';

			rng = document.createRange();
			rng.setStart(sel.anchorNode, sel.anchorOffset);
			rng.setEnd(sel.focusNode, self.focusOffset);
			// rng.surroundContents(elem);

			console.log( rng.toString() )
		});
	</script>
</body>
</html>


Но в Range почему-то пустота...

рони 01.03.2016 19:42

Decode,
self строка 22

Decode 01.03.2016 21:19

рони, точно, спс!


Часовой пояс GMT +3, время: 22:09.