1. Главная
  2. Статьи
  3. Вопрос-Ответ
  4. Новости
  5. Форум
  6. Вики
 

Биржа комментариев

СМС рассылки

Партнерские программы

Бесплатное продвижение сайтов

VPS хостинг

Кабель оптом

Качественный контент

Офисная мебель Проспект

Jquery метод .html() в Internet Explorer переводит теги в заглавные

Jquery метод .html() в Internet Explorer переводит теги в заглавные

Столкнулся с проблемой, метод получения HTML содержания с помощью

$('#div').text(); 

Интернет Эксплорер IE8 переводит все теги в заглавные буквы, а так же меняет некоторые синтаксические оформления (например width="15" height="15" убирает кавычки и выдает width=15 height=15). Почему он так делает и как с этим бороться?

Категория вопроса: Веб-программирование | Просмотров: 3704 | Добавлена: 28.10.2012

Ща я как отвечу!

Добавление комментария по теме
Ваш комментарий ↓ Ж К Ч Т Quote URL Код
Антиспамерская проверка, три плюс семь равно (числом)
Гость028.10.2012

В Internet Explorer 7 и 8 использование

$('#div').html(); or $('#div').text(); 

Означает выполнение некоторых преобразований в структуре кода, например, перевод тегов в верхний регистр, удаление лишних пробелов и т.д.

Единственное, на мой взгляд, решение в данном случае является использовать в место этого

document.getElementById('div').innerText; 

Но этот .innerText не поддерживается в некоторых других браузерах, например Chrome

В данном случае, можно использовать условия:

<script type="text/javascript">
var i_am_old_ie = false;
</script>

<!--[if LT IE  8]>
<script type="text/javascript">
i_am_old_ie = true;
</script>
<![endif]-->
if (i_am_old_ie) {
text = document.getElementById('div').innerText;
} else {
text = $('#div').html();
}

Я не любитель использовать условия в JavaScript но в данном случае не нахожу чего либо более подходящего. Если Вы имеете лучшее решение, с радостью посмотрю на него.

Цитировать
 
О сайте ⋅  Контакты