Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Изменить высоту фрейма в зависимости от высоты блока в загружаемом документе (https://javascript.ru/forum/dom-window/52078-izmenit-vysotu-frejjma-v-zavisimosti-ot-vysoty-bloka-v-zagruzhaemom-dokumente.html)

danik.js 04.12.2014 23:21

Цитата:

Сообщение от Sigizmund2012
может она более правильная?

alert(window === window);

alert(window === window.window);

alert(window === window.window.window.window.window.window.window.window);


Я думаю третий вариант в четыре раза правильней второго и в восемь раз - первого :D

Sigizmund2012 04.12.2014 23:39

Цитата:

Сообщение от danik.js
в четыре раза правильней второго и в восемь раз - первого

Убедил. Вот, на w3scools.com как пишут window.top != window.self, думаю так наиболее правильно.
Ну а что насчёт "window.top.head.appendChild( <style>Мои стили</style> )"? Я в правильном направлении копаю?

danik.js 05.12.2014 00:04

Цитата:

Сообщение от Sigizmund2012
window.top.head.appendChild

Это зачем?

Sigizmund2012 05.12.2014 09:16

Цитата:

Сообщение от danik.js
Это зачем?

Хочу подключить к документу во фрейме свои стили. Как-то так:
if( window.top !== window.self ){
	var style = window.top.document.createElement('style');
	style.innerHTML = '.simple-content{background: green;}';
	window.top.document.head.appendChild( style );
}

Но что-то этот код нихрена не работает.

danik.js 05.12.2014 13:05

Но зачем? Почему бы просто не назначить особый класс?

Sigizmund2012 05.12.2014 13:13

Цитата:

Сообщение от danik.js
Почему бы просто не назначить особый класс?

Потому что я не знаю, что такое особый класс.:-? Да и классов в javascript нет вроде. Если имеется ввиду css класс, то как его назначить? Что-то не догоняю я.

danik.js 05.12.2014 15:28

Цитата:

Сообщение от Sigizmund2012
Если имеется ввиду css класс, то как его назначить? Что-то не догоняю я.

Да. Назначить просто.
element.className += ' special-class';


Чтобы назначить класс, например для <html> пиши document.documentElement.className ...

Sigizmund2012 09.12.2014 10:10

Через jquery получается класс вот так добавить:
iframeDoc.find('.simple-content').addClass('h1backgr');

правда селектор тега в Хроме почему-то не работает, т.е. код:
iframeDoc.find('h1').addClass('h1backgr');

в Хроме не покажет ничего. Всем спасибо за внимание, особенно danik.js

Deff 09.12.2014 18:07

Sigizmund2012,
:write: А зачем Вы кавыряетесь с фреймом имея jQuery ?
Не проще ли данные формы отправлять и получать пост-запросом аяксом из DIV(а), стилизованного под модальное окно, в него же ?
Для отправки формы аяксом существует даж специальный объект FormData()


Часовой пояс GMT +3, время: 03:53.