Модераторы: Illuminaty

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сделать весь фрейм ссылкой 
:(
    Опции темы
Всемогущий
Дата 6.3.2007, 19:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 440
Регистрация: 25.6.2006
Где: Челябинск

Репутация: нет
Всего: 13



Сделать весь фрейм ссылкой.
Возможно ли это?


--------------------
Цитата(smartov @  16.1.2007,  13:26 Найти цитируемый пост)
Видел я PHP код, который пишут наСильники, никогда на php не писавшие  :D  То еще зрелище. Все пытаются сделать руками и через ж (как в С привыкли). Все пытаются память освобождать итд итп. 
PM MAIL ICQ   Вверх
Mymik
Дата 6.3.2007, 20:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1474
Регистрация: 12.5.2006
Где: Lamer-центер

Репутация: 7
Всего: 78



да, поставь у фрейма onclick="document.location = 'http://www.microsoft.com/'"


--------------------
ICQ ::            857-857
E-mail ::         mymik[at]inbox[dot]ru 
HomaPage ::  http://localhost/

:to_become_senile  :this
PM MAIL WWW ICQ   Вверх
Всемогущий
Дата 6.3.2007, 21:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 440
Регистрация: 25.6.2006
Где: Челябинск

Репутация: нет
Всего: 13



Код

<iframe onclick="document.location = 'http://www.microsoft.com/'" ></iframe>

именно так .не работает smile 


--------------------
Цитата(smartov @  16.1.2007,  13:26 Найти цитируемый пост)
Видел я PHP код, который пишут наСильники, никогда на php не писавшие  :D  То еще зрелище. Все пытаются сделать руками и через ж (как в С привыкли). Все пытаются память освобождать итд итп. 
PM MAIL ICQ   Вверх
Mymik
Дата 7.3.2007, 10:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1474
Регистрация: 12.5.2006
Где: Lamer-центер

Репутация: 7
Всего: 78



А есть возможность в теле iframe приписать на body событие onclick ??? Если руками нет возможности, тогда с помощью JS нужно.
Код

document.getElementById(<iframeID>).contentWindow.document.body.onclick = 'document.location = "http://www.microsoft.com/"';

Однако к сожалению не знаю, сработает ли это для всего документа или только для фрейма... Если не сработает для всего документа, тогда скорее всего надо будет через window.location = "http://www.microsoft.com/" сделать.

Это сообщение отредактировал(а) Mymik - 7.3.2007, 10:04


--------------------
ICQ ::            857-857
E-mail ::         mymik[at]inbox[dot]ru 
HomaPage ::  http://localhost/

:to_become_senile  :this
PM MAIL WWW ICQ   Вверх
Всемогущий
Дата 7.3.2007, 11:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 440
Регистрация: 25.6.2006
Где: Челябинск

Репутация: нет
Всего: 13



если прописать руками ,работает.

Цитата(Mymik @  7.3.2007,  12:02 Найти цитируемый пост)
Код

document.getElementById(<iframeID>).contentWindow.document.body.onclick = 'document.location = "http://www.microsoft.com/"';


а так не хочет.
то что я подгружаю во фрейм,не является частью моего сайта.



--------------------
Цитата(smartov @  16.1.2007,  13:26 Найти цитируемый пост)
Видел я PHP код, который пишут наСильники, никогда на php не писавшие  :D  То еще зрелище. Все пытаются сделать руками и через ж (как в С привыкли). Все пытаются память освобождать итд итп. 
PM MAIL ICQ   Вверх
Mymik
Дата 7.3.2007, 13:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1474
Регистрация: 12.5.2006
Где: Lamer-центер

Репутация: 7
Всего: 78



тогда предлагаю несколько замороченное предложение :о)
Записать iframe в див :о)
Код

<div onclick="document.location = 'http://www.microsoft.com'"><iframe ></iframe></div>



--------------------
ICQ ::            857-857
E-mail ::         mymik[at]inbox[dot]ru 
HomaPage ::  http://localhost/

:to_become_senile  :this
PM MAIL WWW ICQ   Вверх
hAhol13
Дата 9.11.2009, 08:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 9.11.2009

Репутация: нет
Всего: нет



Извиняюсь за поднятие оччень старой темы, но нашел через поиск - как раз та тема, над которой бьюсь уже сутки. Имеется iframe, уже в div. необходимо, чтоб по клику открывалось новое окно с содержимым фрейма (весь фрейм - картинка, обновляемая яваскриптом). Перепробовал всё, в том числе предложенное здесь. Если есть какие-либо еще идеи, то буду благодарен.

Заранее спасибо!
PM MAIL   Вверх
bars80080
Дата 9.11.2009, 15:12 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 50
Всего: 315



Цитата(hAhol13 @  9.11.2009,  07:53 Найти цитируемый пост)
Извиняюсь за поднятие оччень старой темы, но нашел через поиск

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


Цитата(hAhol13 @  9.11.2009,  07:53 Найти цитируемый пост)
Имеется iframe, уже в div. необходимо, чтоб по клику открывалось новое окно с содержимым фрейма 

по клику чего? по фрейму или кнопки какой?
во фрейме ваш домен или иной?

можно попробовать растянуть над фреймом слой абсолютно позиционированный и написать переход по нему

кстати, везде где выше советовалось document.location - ошибка, у document нет такого свойства, переправьте на window.location

во-вторых, новое окно средствами javascript открывается с помощью window.open()

и в-третьих, в таком урезанном варианте задача кажется совершенно не реальной (ну, мож криминалом чуть попахивает), можете рассказать что конкретно у вас происходит на странице?
PM MAIL WWW   Вверх
hAhol13
Дата 9.11.2009, 19:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 9.11.2009

Репутация: нет
Всего: нет



Хм.. по другим форумам привык, что "не создавайте новые темы" smile Извините.

Более подробно суть вопроса:
Имеется страничка, полностью разделенная на 4 равных части, в каждую подгружается изображение с внешних источников. Разделение - CSS, div. То есть 4 div'а, в каждом iframe, параметром src подгружаю изображение. Далее содержимое фрейма (изображение) обновляется посредством яваскрипта:
Код

function refreshiframe() 
{
parent.iframe_name.location.href='******' 
setTimeout('refreshiframe()',5000);
}

По большому счету всё замечательно и изумительно, но мне нужно, чтоб кликом по изображению открывалось новое окно с одним единственным изображением - с тем, что было в том фрейме. Обновление настроить думаю будет менее трудно.
PM MAIL   Вверх
bars80080
Дата 9.11.2009, 20:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 50
Всего: 315



а нельзя ли самому изображению назначить кликабельность? то есть код внутри фрейма поддаётся правке?
PM MAIL WWW   Вверх
hAhol13
Дата 10.11.2009, 18:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 9.11.2009

Репутация: нет
Всего: нет



Хм.. то есть? Изображение подгружается так:

Код

<iframe id='***' src='*****'>
</iframe>


Между открывающим и закрывающим, собственно, и нет ничего...
PM MAIL   Вверх
bars80080
Дата 10.11.2009, 19:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 50
Всего: 315



в смысле? путь к картинке в src iframe`а?
PM MAIL WWW   Вверх
hAhol13
Дата 10.11.2009, 19:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 9.11.2009

Репутация: нет
Всего: нет



Ну да. А вы предлагаете так:

Код

<iframe id='**'>
<a href='****'>
<img src='**'>
</img>
</a>
</iframe>


Верно?
PM MAIL   Вверх
bars80080
Дата 10.11.2009, 20:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 50
Всего: 315



в общих чертах да. одно непонятно, зачем вообще здесь фреймы?
PM MAIL WWW   Вверх
hAhol13
Дата 11.11.2009, 04:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 9.11.2009

Репутация: нет
Всего: нет



Обновление. Мне неудобен тег meta. Мне удобней именно обновление по скрипту refreshiframe

А что значит "в общих чертах"?

Это сообщение отредактировал(а) hAhol13 - 11.11.2009, 04:21
PM MAIL   Вверх
Любитель
Дата 11.11.2009, 08:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: нет
Всего: 92



Цитата(hAhol13 @  11.11.2009,  04:20 Найти цитируемый пост)
Обновление. Мне неудобен тег meta. Мне удобней именно обновление по скрипту refreshiframe

 smile А что мешает src у имаджа менять?


--------------------
PM MAIL ICQ Skype   Вверх
bars80080
Дата 11.11.2009, 10:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 50
Всего: 315



Цитата(hAhol13 @  11.11.2009,  03:20 Найти цитируемый пост)
Обновление. Мне неудобен тег meta. 

не понял. какие meta?
почему картинки было не засунуть в дивы на одной странице?


Цитата(hAhol13 @  11.11.2009,  03:20 Найти цитируемый пост)
А что значит "в общих чертах"?

значит, что реализаций много. <a href="" target="_blank"> или <img onclick="" />
PM MAIL WWW   Вверх
hAhol13
Дата 11.11.2009, 14:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 9.11.2009

Репутация: нет
Всего: нет



meta - это у которого http-equiv=refresh.

Кстати через <a href=""> c img внутри не работает. Через img onclick как должно быть?

<img onclick="window.open('ссылка'); return false;"/>

Так?

src у img не надо менять, он один и тот же. Просто картинка с данным адресом обновляется где-то там. Просто refreshiframe не перезагружает всю страничку целиком, а только эти картинки. И через необходимые (разные для каждой картинки) промежутки времени. Как бы всех устраивает smile

ЗЫ Плагин-валидатор в огнелисе полностью согласен с таким

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

Метод валидации - сначала SGML Parser, потом HTML Tidy

Это сообщение отредактировал(а) hAhol13 - 11.11.2009, 14:31
PM MAIL   Вверх
bars80080
Дата 11.11.2009, 14:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 50
Всего: 315



Цитата(hAhol13 @  11.11.2009,  13:24 Найти цитируемый пост)
src у img не надо менять, он один и тот же. Просто картинка с данным адресом обновляется где-то там

можно менять

Код

image1.src = 'http://server.ru/pic1.jpg?par=123';
// на
image1.src = 'http://server.ru/pic1.jpg?par=124';


это даст вам 100%-ную перезагрузку не взирая ни на какие кэши.
к тому же, насколько я помню meta refresh работает только в ИЕ

Цитата(hAhol13 @  11.11.2009,  13:24 Найти цитируемый пост)
Кстати через <a href=""> c img внутри не работает

не могёт такого быть.
Код

<a href="http://server.ru/pic1.jpg" target="_blank"><img src="http://server.ru/pic1.jpg" /></a>


PM MAIL WWW   Вверх
hAhol13
Дата 11.11.2009, 19:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 9.11.2009

Репутация: нет
Всего: нет



Код

<div id="имя">
<iframe name="имя"  style="width: 100%; height: 100%; marginwidth: 0; marginheight: 0; scrolling: 0; frameborder: 0; hspace: 0; vspace: 0;">
<a href="путь_к_файлу" target="_blank">
<img class="имя" src="ссылка" alt="текст"/>
</a>
</iframe>
</div>


Так - не работает. Ни в ИЕ, ни в Огнелисе, ни в Опере.. Кстати meta refresh у меня и в Огнелисе работал. В опере не помню.

Ссылка на изображение, так сказать, статична и от меня не зависит. Я наверно, просто не понимаю, в силу ограниченности знаний, что вы предлагаете сделать с этой самой ссылкой для перезагрузки изображения..  smile  smile 
PM MAIL   Вверх
Любитель
Дата 11.11.2009, 20:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: нет
Всего: 92



bars80080 прав - в 99% случаев достаточно добавления рандомного гет-параметра (есть исключения, но они редки). Какого вида твои ссылки?


--------------------
PM MAIL ICQ Skype   Вверх
bars80080
Дата 11.11.2009, 21:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 50
Всего: 315



Код

<script>
function refr() {
    var bk = document.getElementById('t');
    if(!bk) return false;
    var el = bk.getElementsByTagName('img');
    if(!el) return false;
    var ell = el.length;
    var d = new Date();
    var par = d.getHours() + '' + d.getMinutes();
    for(var i = 0; i < ell; i++) {
        el[i].src = el[i].title + '?par=' + par;
    }
}
var tm = setInterval('refr()', 60000);
</script>
<table id="t">
<tr><td><div><a href="pic1.jpg" target="_blank"><img src="pic1.jpg" title="pic1.jpg" /></a></div></td>
<td><div><a href="pic2.jpg" target="_blank"><img src="pic2.jpg" title="pic2.jpg" /></a></div></td></tr>
<tr><td><div><a href="pic3.jpg" target="_blank"><img src="pic3.jpg" title="pic3.jpg" /></a></div></td>
<td><div><a href="pic4.jpg" target="_blank"><img src="pic4.jpg" title="pic4.jpg" /></a></div></td></tr>
</table>
остаётся только стилями придать нужный вид
PM MAIL WWW   Вверх
hAhol13
Дата 12.11.2009, 05:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 9.11.2009

Репутация: нет
Всего: нет



Большое спасибо..

Ссылки (их 4) имеют вид http://server.ru/dir/name.html

Я очень благодарен bars80080 за то время, что Вы на меня тратите. После данного вашего примера начало работать автомасштабирование изображений, и, самое главное, ссылки. Теперь изображения кликабельны и открывают себя в новом окне  smile Одна закавыка - в ИЕ и Опере после обновления я получаю красный крестик и alt-текст, а в Огнелисе обновления просто нет  smile даже если я меняю ссылку напрямую на изображение - http://server.ru/dir1/dir2/name.jpg, не помогает. Либо крестик, либо не обновляется.

Я правильно понимаю, что при фреймах не было автомаштабирования (цсс) и ссылки не работали, из-за того что это было в обновляющемся фрейме?

UPD:

Вспомнил про упоминание растягивания абсолютно позиционированного слоя поверх уже имеющегося изображения, вот что получилось:

Код

<div id="имя">
<iframe name="имя" style="width: 100%; height: 100%; marginwidth: 0px; marginheight: 0px; scrolling: 0; frameborder: 0; hspace: 0px; vspace: 0px;">
<img class="имя" src="ссылка" alt="текст"/>
</iframe>
</div>

<a href="ссылка" target="_blank">
<div id="имя">
</div>
</a>


Работает в огнелисе - обновление, кликабельность. А вот в ИЕ и опере - нет..  smile 

Это сообщение отредактировал(а) hAhol13 - 12.11.2009, 08:30
PM MAIL   Вверх
bars80080
Дата 12.11.2009, 10:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 50
Всего: 315



Цитата(hAhol13 @  12.11.2009,  04:36 Найти цитируемый пост)
 в ИЕ и Опере после обновления я получаю красный крестик и alt-текст

строится неправильный адрес. выведите, что получается (к примеру так: alert(el[i].src);) и посмотрите что там у вас. подставьте этот адрес в адресную строку браузера, точно ли там есть изображение


п.с. чуть не забыл, я надеюсь вы там используете абсолютные адреса, начинающиеся с http:// ?
PM MAIL WWW   Вверх
hAhol13
Дата 12.11.2009, 17:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 9.11.2009

Репутация: нет
Всего: нет



Да, адреса идут вида http:/server.ru/dir/name.html (правда один есть оканчивается на пхп, но суть-то таже у него..)

Вывожу таким образом: <body onload="refr(); alert(el[i].src);">. Ну собственно выводил и без refr();. Ие выдает ошибку  
Цитата

'el' - определение отсутствует.


И вопрос - возможно, метод и не очень красивый, но со слоем же работает.. Почему только в фоксе?
PM MAIL   Вверх
bars80080
Дата 12.11.2009, 18:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 50
Всего: 315



Цитата(hAhol13 @  12.11.2009,  16:29 Найти цитируемый пост)
<body onload="refr(); alert(el[i].src);">

в данном случае ничего и не будет, el определена только внутри функции
PM MAIL WWW   Вверх
hAhol13
Дата 12.11.2009, 20:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 9.11.2009

Репутация: нет
Всего: нет



Виноват smile

Значит так.. изображение делается так:

<img class="имя" src="ссылка" title="что-то" alt="что-то"/>

Из сообщения alert я узнаю, что адрес строится как путь до директории, содержащей файл index.html (который в себе и содержит весь код моей злополучной странички) + содержимое title +?par=xxxx:

file:///C:/dir1/dir2/"title"?="xxxx"

Как уже сказал, dir2 содержит в себе файл index.html. Но разумеется, там нет ничего похожего на построенный адрес. Почему строится он к локальным документам?

ЗЫ параметр alt потребован SGML Parser'ом smile
PM MAIL   Вверх
bars80080
Дата 13.11.2009, 00:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 50
Всего: 315



Цитата(hAhol13 @  12.11.2009,  19:37 Найти цитируемый пост)
file:///C:/dir1/dir2/"title"?="xxxx"

ух ты, какая страшная вещь. а ведь она никакого отношения к вэбу не имеет. такое может глючить по разному.
вэб-адреса начинаются с http://
PM MAIL WWW   Вверх
hAhol13
Дата 13.11.2009, 07:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 13
Регистрация: 9.11.2009

Репутация: нет
Всего: нет



 smile  Спасибо вам..
Код


el[i].src = el[i].title + '?par=' + par;
 - получается, неправильный адрес только лишь из-за title вместо src?  smile 
PM MAIL   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Вёрстка веб-сайтов | Следующая тема »


 




[ Время генерации скрипта: 0.1581 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.