Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 17.10.2009, 17:46
Koc Koc вне форума
Аспирант
Отправить личное сообщение для Koc Посмотреть профиль Найти все сообщения от Koc
 
Регистрация: 21.09.2009
Сообщений: 59

appendTo on IE
// не работает в IE6-8, но работает в FF 3.5.x, GH 3, S 3
$('<link />')
	.attr({type: 'text/css', href: jPopUp.C.CSS_FILE, rel: 'stylesheet', media: 'screen'})
	.appendTo('head');
// работает корректно вроде бы везде
$('head').append('<link type="text/css" rel="stylesheet" href="' + jPopUp.C.CSS_FILE + '" />');

что я делаю не так?
Ответить с цитированием
  #2 (permalink)  
Старый 20.10.2009, 01:18
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

дело в том, что в ie есть bug, при добавлении link с помощью innerHTML. Обходиться так:
el.innerHTML = 'text<link type="text/css" rel="stylesheet" href="...css">';

jQuery еще почему-то link в div оборачивает

как добавить link с помощью createElement и атрибутов/свойств я не нашел

prototype этот bug не исправляет, пробовал так
$$('head')[0].insert('<link type="text/css" rel="stylesheet" href="40.css" />');

https://prototype.lighthouseapp.com/...-html-literals

в mootools аналогично
new Element('div').set('html',  '<link type="text/css" rel="stylesheet" href="40.css" />').childNodes.length

выдает 0
Ответить с цитированием
  #3 (permalink)  
Старый 20.10.2009, 12:56
Koc Koc вне форума
Аспирант
Отправить личное сообщение для Koc Посмотреть профиль Найти все сообщения от Koc
 
Регистрация: 21.09.2009
Сообщений: 59

то есть баг не мой, а IE и в jQuery не досмотрели?

Вот кстати сегодня кто-то накатал статейку, в которой почти эта же проблема поднята: http://js-php.ru/web-development/jav...-create-in-ie/
Ответить с цитированием
  #4 (permalink)  
Старый 21.10.2009, 03:20
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

если ты знаешь, как создать link с помощью createElement и атрибутов/свойств, чтобы он в ie заработал, значит в jQuery не досмотрели
Ответить с цитированием
  #5 (permalink)  
Старый 22.10.2009, 20:27
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

В IE удобнее так:
head.insertAdjacentHTML("beforeEnd", 'text<link rel="stylesheet" type="text/css" href="…" />');
Ответить с цитированием
Ответ


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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
appendTo Destrifer jQuery 7 17.05.2011 03:56
Подгрузка элемента из div через Appendto Vitaly jQuery 5 24.06.2009 10:54