Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.12.2012, 15:21
Профессор
Отправить личное сообщение для Shitbox2 Посмотреть профиль Найти все сообщения от Shitbox2
 
Регистрация: 04.10.2010
Сообщений: 571

Как получить содержимое элемента вместе с самим элементом?
Есть тег
​<p id="elem" class="cl">aaa</p>​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

Его нужно сохранить в переменную. Полностью, а не одно лишь содержимое. Сейчас делаю так
var elem = $('#elem').wrap('<div/>').parent().html()

Может быть можно лучше?
Ответить с цитированием
  #2 (permalink)  
Старый 26.12.2012, 15:30
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от Shitbox2
Как получить содержимое элемента вместе с самим элементом?
<script src="http://code.jquery.com/jquery-latest.js"></script>

<p id="elem1" class="cl">id="elem1"</p>​​​​​​​​​​​​​​​​​
<div id="elem2" class="cl">id="elem2" </div>


<!-- cкрытый блок хранения -->
<div id="storag" style="display:none"></div>

<script type="text/javascript">
function sav_html (selector){
var elem =$('#storag').html($(selector).clone()).html();
 return elem;
}
alert(sav_html ("#elem1"));
alert(sav_html ("#elem2"));
</script>

Последний раз редактировалось Deff, 26.12.2012 в 15:39.
Ответить с цитированием
  #3 (permalink)  
Старый 26.12.2012, 16:06
Профессор
Отправить личное сообщение для Hoshinokoe Посмотреть профиль Найти все сообщения от Hoshinokoe
 
Регистрация: 08.01.2012
Сообщений: 253

Shitbox2,

Использовать родное свойство outerHTML. Поддерживается всеми современными браузерами (работает даже в ИЕ6 и 7)
<script src="http://code.jquery.com/jquery-latest.js"></script>
<p id="elem" class="cl">content for id="elem1"</p>​​​​​​​​​​​​​​​​​

<script type="text/javascript">
var elem = $('#elem').get(0).outerHTML;
alert(elem);
</script>
Ответить с цитированием
  #4 (permalink)  
Старый 26.12.2012, 16:13
Профессор
Отправить личное сообщение для Shitbox2 Посмотреть профиль Найти все сообщения от Shitbox2
 
Регистрация: 04.10.2010
Сообщений: 571

Так тоже делал, только в библиотечном коде такое не прокатит, т.к. нельзя гарантировать, что будет блок хранения. Разве что, создать его, но по громоздкости будет больше чем с wrap.
Ответить с цитированием
  #5 (permalink)  
Старый 26.12.2012, 16:16
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Shitbox2,
Сообщение от Shitbox2
Разве что, создать его, но по громоздкости будет больше чем с wrap.
Блок един на все исполнения - wrap же исполняется каждый раз
мон блок задать скриптом

<script src="http://code.jquery.com/jquery-latest.js"></script>

<p id="elem1" class="cl">id="elem1"</p>​​​​​​​​​​​​​​​​​
<div id="elem2" class="cl">id="elem2" </div>


<script type="text/javascript">
var a='<div id="storag" style="display:none"></div>';
$("body").append(a)
function sav_html (selector){
var elem =$('#storag').html($(selector).clone()).html();
 return elem;
}
alert(sav_html ("#elem1"));
alert(sav_html ("#elem2"));
</script>
Ответить с цитированием
  #6 (permalink)  
Старый 26.12.2012, 16:18
Профессор
Отправить личное сообщение для Shitbox2 Посмотреть профиль Найти все сообщения от Shitbox2
 
Регистрация: 04.10.2010
Сообщений: 571

Действительно. Даже так работает $('#elem')[0].outerHTML И как сразу не догадался...

Цитата:
Блок един на все исполнения - wrap же исполняется каждый раз
мон блок задать скриптом
В этом плане да, с блоком эффективнее.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как отследить появление элемента на странице? рони Общие вопросы Javascript 18 23.06.2020 09:18
как получить offsetHeight для элемента с display:none cyber Events/DOM/Window 4 01.06.2012 19:19
Как получить значение переменной из callback функции? Хиросим AJAX и COMET 5 24.04.2012 09:32
Как получить ширину html элемента?(возвращает NaN или auto) manking Общие вопросы Javascript 2 23.03.2012 14:17
Как то можно узнать ID HTML элемента вызвавшего JavaScript функцию? Opusel Events/DOM/Window 1 18.12.2011 18:36