Я пишу букмарклет, который должен работать в контексте страниц, дизайн которых я не контролирую. На некоторых страницах мне нужен букмарклет, чтобы он работал в фреймах (в фреймах). Возможно ли, чтобы диалог jQuery-UI работал внутри фрейма?
В настоящее время, когда я сталкиваюсь со страницей с набором фреймов, я создаю свой диалог следующим образом:
var frame = window.frames[0];
var div = $(frame.document.createElement("div"));
div.html("My popup contents");
div.dialog( ... );
В результате jQuery добавляет элемент div пользовательского интерфейса к основному документу, а не к документу фрейма. Поскольку основной документ - это просто набор фреймов, ничего не отображается. Я не могу найти какие-либо параметры в API jquery-ui, чтобы указать, в какой документ должны быть встроены виджеты. Букмарклет обязательно будет работать (или, по крайней мере, запускаться) в контексте внешнего документа.
Я знаю, что невозможно наложить оверлей на кадры ; Мне удобно с отображением только в одном кадре. Кроме того, некоторые другие известные букмарклеты не работают на страницах с наборами кадров, поэтому это может быть распространенной проблемой.
Предложения