На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: Vasya2000, Serafim, fatalist
  
> Вставить фрейм с возможностью показа на весь экран
    Нужно вставить в html-документ фрейм (короче, код из другого полноценного html-файла, который подгружает js, css), но так, чтобы он мог открыть картинку через Lightbox (слайдшоу-скрипт).
    Потому что я вставляю, а изображение открывается только в рамках фрейма :(
    Например, фрейм 400*200 точек, а картинка должна открываться во всплывашке на полэкрана...
      У фрейма есть свойство parent, если не путаю. Можно обратиться к нему и вызвать нужный ja-метод, иначе никак.
        А можно поподробнее? А то я ничего не понял :)
          // код родителя
          ExpandedWrap disabled
            window.addEventListener('message', function(event) {
              if(event.origin === 'http://localhost/') {
                switch(event.data.action) {
                  case 'alert':
                    alert('Мы вызвали окошечко (а можем вызвать что-то ещё, например Lightbox)');
                    break;
                }
              }
            }, false);


          // код айфрейма
          ExpandedWrap disabled
            window.parent.postMessage({action: 'alert'}, 'http://localhost/');


          https://developer.mozilla.org/en-US/docs/DO...dow.postMessage
            Ммм... вопрос: если родитель не имеет подключенных js-библиотек для вызова lightbox'а, то ничего не выйдет?
            Суть iframe'а в том, что когда я подключаю js-библиотеки к родителю, то lightbox почему-то не работает. И мне сейчас проще подгрузить код в iframe'е, чем разбираться почему не работает.

            Добавлено
            Короче, разобрался почему не работает (без iframe). Вернее, как сделать, чтоб работало :)

            Добавлено
            Но про iframe всё равно интересно :)
              йафрейм - это полностью изолированное окружение и влияние на внешнюю среду оно может оказывать лишь косвенное (например как в моём примере - передать команду на отображение лайтбокса).
                Ну а как же youtube всякие, которые открываются на весь экран?
                  у них (у фрейма) есть атрибут фуллскрин со значением тру и вызов нативного метода перевода в полный экран: https://developer.mozilla.org/en-US/docs/We...ull_screen_mode
                  0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                  0 пользователей:


                  Рейтинг@Mail.ru
                  [ Script execution time: 0,0249 ]   [ 16 queries used ]   [ Generated: 19.04.24, 14:27 GMT ]