Просмотр темы
Как задать стили некоторым элементам в iframe?
|
|
Zaxap |
Опубликовано 25.12.2013 09:55
|
Элита Сообщений: 1090 Зарегистрирован: 05.09.2012 10:32 |
Имеется fancybox и имеется подгруженная с помощью него во фрейм *.php страница. Некоторым элементам в подгруженной странице (именно когда она подгружена в iframe) необходимо задать display:none! important... Как такое можно провернуть? С помощью css это, как я уже давно понял, не получится. Прочитал на HashCode, что можно сделать путем jquery - сделал так:
Но ничего вот не выходит. Скорее всего, не туда просто пихаю, но вот куда запихнуть это, кроме как в head, - ума не приложу :( Зло не дремлет, а я добрый...
|
|
|
Rush |
Опубликовано 25.12.2013 10:08
|
Администратор Разработчики Группа поддержки Сообщений: 1418 Зарегистрирован: 31.08.2010 14:41 |
оох, уже память подводит. из ифрейма получить доступ к родительскому окну нельзя 100%, а из родительского в ифрейм можно, но точно не помню как( в принципе твой вариант должен работать, только попробуй ифрейму повесить айди а не класс |
|
|
Zaxap |
Опубликовано 25.12.2013 10:16
|
Элита Сообщений: 1090 Зарегистрирован: 05.09.2012 10:32 |
Попробую...)) --- Не прокатило А что еще можно? о.о Изменил(а) Zaxap, 25.12.2013 13:28 Зло не дремлет, а я добрый...
|
|
|
Rush |
Опубликовано 25.12.2013 13:49
|
Администратор Разработчики Группа поддержки Сообщений: 1418 Зарегистрирован: 31.08.2010 14:41 |
ты уверен что задал айдишник именно ифрейма? можно в ифрейм забиндить свою ксс попробовать |
|
|
Zaxap |
Опубликовано 25.12.2013 14:05
|
Элита Сообщений: 1090 Зарегистрирован: 05.09.2012 10:32 |
Rush, вроде, уверен) Возможно, еще раз повторюсь, я дофига не туда
запихал - в head... Ну оно не пашет...уже все перепроверял по 100 раз, убирал/ставил... Объединенно в 26.12.2013 09:35: Нашел, что можно сделать это через PostMessage, но, блин, как сделать это нормально?.. Изменил(а) Zaxap, 25.12.2013 23:35 Зло не дремлет, а я добрый...
|
|
|
Rush |
Опубликовано 26.12.2013 10:26
|
Администратор Разработчики Группа поддержки Сообщений: 1418 Зарегистрирован: 31.08.2010 14:41 |
я почти уверен что неправильно айдишник задаешь) скрин верстки из девтулзов
|
|
|
Zaxap |
Опубликовано 26.12.2013 11:54
|
Элита Сообщений: 1090 Зарегистрирован: 05.09.2012 10:32 |
Ну, вроде, задаю все верно... В *.js fancybox'а поставил этот id (убрал {rnd}), запихал код выше в подгружаемый файл, где, собственно, и задал некоторым элементам, помимо прочего, id="none"... Мне смутно кажется, что этот код нужно запихать в fancybox, где и контролируется создание iframe в модальном окне, но вставить нормально это в файл *.js я так и не смог...))) Зло не дремлет, а я добрый...
|
|
|
Rush |
Опубликовано 26.12.2013 12:30
|
Администратор Разработчики Группа поддержки Сообщений: 1418 Зарегистрирован: 31.08.2010 14:41 |
Blocked a frame with origin "http://fiddle.jshell.net" from accessing a frame with origin "http://rusfusion.ru". Protocols, domains, and ports must match. ну понятно, браузер не разрешает. тебе надо проксировать твой ифрейм, т.е. сначала получить его через file_get_contents() к примеру, а потом грузить во фрейм, чтобы он был с твоего домена. иначе CORS не позволяет |
|
|
Zaxap |
Опубликовано 26.12.2013 12:34
|
Элита Сообщений: 1090 Зарегистрирован: 05.09.2012 10:32 |
А никак по-другому нельзя? Через DOM, читал, как-то можно, PostMessage еще... Просто много крутить не хочется, но и бросать идею не буду... Возможно ли это сделать через if (...) { ... } ? Как-нибудь задать, чтобы стили применялись, если iframe... Зло не дремлет, а я добрый...
|
|
|
Alipapa |
Опубликовано 26.12.2013 12:44
|
Опытный пользователь Сообщений: 243 Зарегистрирован: 02.11.2010 13:13 |
Ну как-то так: |
|
|
Zaxap |
Опубликовано 26.12.2013 12:54
|
Элита Сообщений: 1090 Зарегистрирован: 05.09.2012 10:32 |
Alipapa, спасибо... Вроде, работает (воткнул, даже еще не разбирал толком)... Изучу досконально - отпишу:) --- Не работает. Рано радовался... Кидает ошибку: Call to undefined function write()... --- Черт...это же js :D Все работает:) Спасибо! Файл стилей трогать не стал, а сделал так:
Разъясню...может, пригодится кому: ...если iframe, то добавляется <style>#none{display:none !important}</style>, если не iframe, => не добавляется ;) Изменил(а) Zaxap, 26.12.2013 13:36 Зло не дремлет, а я добрый...
|
|
Поделиться этой темой | |
Социальные закладки: | |
URL: | |
BBcode: | |
HTML: |
Перейти на форум: |