Javascript-форум (https://javascript.ru/forum/)
-   Opera, Safari и др. (https://javascript.ru/forum/css-html-browser/)
-   -   iframe, как правильно обратиться? (https://javascript.ru/forum/css-html-browser/3819-iframe-kak-pravilno-obratitsya.html)

Geddar 26.05.2009 21:11

iframe, как правильно обратиться?
 
Вот

var op=0;
function show(d){
if(d.style.visibility=='hidden'){
op=0;
d.style.visibility='visible';}
if(op<1){
op+=0.05;
setTimeout(function(){d.style.opacity=op; show(d);},20);}}

function hide(d){
if(op>0){
op-=0.05;
setTimeout(function(){d.style.opacity=op; hide(d);},20);}
else{
d.style.visibility='hidden';
op=1;}}

Работает отлично, вот только я пивязал функции к iframe оказалось в опере не работает. В Мозилле работает нормально.

А так же
onclick="allimg.src='allimg.php?c='+aimg; show(allimg);"

где aimg имя файла (картинки).
Проблема та же: работает только в мозиле.
Подскажите, люди ;)

x-yuri 27.05.2009 04:39

что значит привязал функции к iframe? У меня в ff, например, неработает вызов функций из iframe, как я тебя понял. Покажи содержимое странички и iframe

Riim 27.05.2009 04:47

Насколько я в курсе, opacity у iframe менять вообще нельзя. Т. е. задумано так. Еще задумано, что нельзя менять width и height, хоть это и работает везде на отлично.

x-yuri 27.05.2009 04:50

да, уже понял, а зачем картинки в iframe показывать?

Geddar 27.05.2009 08:53

Задумал я сайт типа галереи.
Т.к. сам пишу на php, решил без всяких двигов с нуля написать (чиста для саморазвититя, Гг)
http://graffiti.farx.ru/galery/
Так вот, в галерее при нажатии на выбранную картинку всплывает iframe с этой картинкой.

Geddar 27.05.2009 08:55

Немого подумав, до меня дошло что проблему с картинкой можно решить через div, вот только как быть с фреймом коментария? Нужно по клику менять его src

x-yuri 27.05.2009 09:33

зачем тут фреймы? Они тут не нужны. Полосу прокрутки можно и div'у задать

Geddar 27.05.2009 10:23

x-yuri, как я говорил раньше я занимаюсь php. Нажав на стрелочку, для просмотра следующей страницы обновиться только фрейм. Своего рода AJAX (хотя помоему это всего лишь модное название:D давно известных вещей). Так же например я использу фрейм в гостевой для просмотра профиля юзера.

x-yuri 27.05.2009 10:44

а потом к тебе из поисковиков в фреймы заходить будут? Да и фрейм это как еще одна вкладка/окно - у него свой объект window... но решать, конечно, тебе

Geddar 27.05.2009 10:52

Значит, всё таки лучше сделать по старому - отдельной страницей...
Возможно над этим ещё стоит подумать, но всё таки хотелось бы узнать как изменить src у iframe и как вызвать функцию из фрейма находящиюся на document

Kolyaj 27.05.2009 11:16

Цитата:

Сообщение от Geddar
сделать по старому - отдельной страницей

По-старому -- это фреймы :)

Geddar 27.05.2009 11:24

Ура! Нашёл :)
parent.document.all.coment.src=url

Осталось вызвать функцию с фрейма, хотя данной проблемы уже не стоит, но чисто из интереса. Тем более я не сомниваюсь что это пригодиться

x-yuri 27.05.2009 11:24

скажем так, я не слышал, чтобы фреймы так использовали

а что iframe.src = '...' не работает?

ты так и не сказал, что значит "пивязал функции к iframe". Передаешь функции в качестве параметра iframe? Тогда можно iframe задать атрибут allowtransparency (для ie, в остальных вроде работает), потом в iframe найти эту картинку и у нее менять прозрачность

x-yuri 27.05.2009 11:25

Цитата:

По-старому -- это фреймы
это совсем по-старому ;)

x-yuri 27.05.2009 11:27

parent.document.all.coment.src=url

это ты из iframe что ли? В любом случае лучше находить элементы через getElementById или что-то подобное

Geddar 27.05.2009 11:37

parent.document.all.coment.src=url

Протестил в Мозилле, Опере и IE работает.

Что касаеться фрейма с картинкой - заменил на div. Показать не могу FTP на zervere сдох ).

А про функции я имею в виду как вызвать функцию из iframe, которая к примеру в другом фрейме или в документ

x-yuri 27.05.2009 11:43

Цитата:

Протестил в Мозилле, Опере и IE работает
я не сказал, что не будет работать, я сказал лучше, имхо

Цитата:

А про функции я имею в виду как вызвать функцию из iframe, которая к примеру в другом фрейме или в документ
parent.f(); // зависит от того, из 
// какого фрейма что вызывать

Geddar 27.05.2009 11:55

parent.hide(parent.document.all.coment);

Понятно, работает везде. Спасибо за внимание. Пока что вопросы исчерпаны

x-yuri 28.05.2009 04:33

никогда не говори везде :stop:

B~Vladi 28.05.2009 12:30

Geddar, вам лучше почитать мануалы по DOM, XHTML, CSS и вы навсегда забудете о фреймах.

Geddar 28.05.2009 15:44

DOM я использую но реже, XHTML ни чем положительным отметить не могу, т.к. в css можно прописать любые теги какие только хочется.

Kolyaj 28.05.2009 15:46

Цитата:

Сообщение от Geddar
DOM я использую но реже, XHTML ни чем положительным отметить не могу, т.к. в css можно прописать любые теги какие только хочется.

Вы почитайте почитайте, каша у вас в голове знатная.

B~Vladi 28.05.2009 16:47

Цитата:

Сообщение от Geddar
DOM я использую но реже

А надо всегда (если вы понимаете о чём речь).

Цитата:

Сообщение от Geddar
XHTML ни чем положительным отметить не могу, т.к. в css можно прописать любые теги какие только хочется.

:wacko: не понял...


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