Вот что у меня сработало:
Моя страница имеет IFRAME внутри DIV, DIV - это то, что facebox должен fadeIn и fadeOut. SRC IFRAME - это страница, на которой есть ссылка, которая выглядит следующим образом:
<a href="#" onclick="parent.close_QM_facebox()">close this facebox modal</a>
В ГОЛОВКЕ страницы, которая содержит DIV и IFRAME (НЕ страницу, вызванную в IFRAME), у меня есть функция JavaScript «close_QM_facebox ()», которая выглядит следующим образом:
function close_QM_facebox() { jQuery(document).trigger('close.facebox'); }
Вот и все. Не проверенный кросс-браузер или в производстве еще. Я потратил часы на поиск этой проблемы и пробовал все: от замены одинарных к двойным кавычкам, document-dot-this и parent-dot-that, window.frames [«что угодно»], и эта однострочная функция делает это. Если вы пытаетесь вызвать функцию со страницы, которая вызывается в IFRAME, вы должны обязательно использовать parent .close_QM_facebox (). Надеюсь, это поможет.
Кстати, см. Строки 47 и 49 файла facebox.js ver 1.2 - это решение было прямо в закомментированном разделе «Использование» самого файла .js. Я скопировал и вставил строку 49 в свою функцию, ничего не изменив, кроме как откомментировав ее:)