Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.01.2012, 11:57
Аспирант
Отправить личное сообщение для syegorius Посмотреть профиль Найти все сообщения от syegorius
 
Регистрация: 28.08.2010
Сообщений: 91

аналог двух строк кода создания Range-объкта для ie
Доброе время суток!

Подскажите как должен выглядеть аналог вот такой функции для ie:

var s1=$(box).find('.cename:first').get(0),
      s2=$(box).find('.cename:last').get(0),
      s=win.getSelection();

if(s.rangeCount>0)s.removeAllRanges();//
savedRange=doc.createRange()//аналог ie - savedRange=doc.body.createTextRange();
//-----------------------Как заменить две нижние строки
savedRange.setStartBefore(s1)
savedRange.setEndAfter(s2)
//-----------------------
s.addRange(savedRange);//аналог ie - savedRange.select();


Поискал в интернете, нашел метод setEndPoint, но нормального доходчивого примера как его использовать так и не нашел, если он вообще подходит в моем случае.

Моя задача это создать выделение которое будет включать все что находится между эл-тами s1, s2 включительно.

Заранее спасибо за помощь!
Ответить с цитированием
  #2 (permalink)  
Старый 13.01.2012, 13:06
Аватар для Aetae
Любитель
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 5,611

http://2007.fastcoder.ru/articles/?aid=609
__________________
29375, 35
Ответить с цитированием
  #3 (permalink)  
Старый 13.01.2012, 13:14
Аспирант
Отправить личное сообщение для skfyann Посмотреть профиль Найти все сообщения от skfyann
 
Регистрация: 27.12.2011
Сообщений: 90

Сообщение от syegorius Посмотреть сообщение
Моя задача это создать выделение которое будет включать все что находится между эл-тами s1, s2 включительно.
Если цель только в этом, то может быть можно сделать так?

<!doctype html>
<html>
<head>
	<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
	<script type="text/javascript">
		$(document).ready( function() {
		var first = $("p").index($("p").first()),
			last = $("p").index($("p").last()),
			middle = $("p:gt(" + first + "):lt(" + (last-1) + ")");

		middle.css("color","red");

		});
	</script>
</head>
<body>
	<p>1</p><p>2</p><p>3</p><p>4</p><p>5</p><p>6</p><p>7</p><p>8</p>
</body>
</html>
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужны светлые головы для создания нового web-проекта Kostanakis AJAX и COMET 3 03.10.2011 10:20
Ищу программиста для сотрудничества, ищу программиста для создания браузерной игры He3HaUKa Javascript под браузер 3 25.04.2011 19:53