Я работаю над плагином для Outlook Web Access. Мой плагин - это просто кнопка с тегом с target='_blank'
, которая отправляет пользователя на другую страницу. На основе document от Microsoft:«Открыть ссылку в новой вкладке» в браузере против «target = _blank» в HTML
В поддерживаемых веб-клиентов, таких как Excel Online и Outlook Web App, Office Надстройки размещаются в IFRAME, который работает с помощью атрибута песочнице HTML5. Компоненты ActiveX или перемещение главной страницы веб-клиента не допускаются. Поддержка надстроек Office включена в веб-клиентах путем интеграции JavaScript API для Office. Аналогично клиентским приложениям на рабочем столе API JavaScript управляет жизненным циклом надстройки и взаимодействием между надстройкой и веб-клиентом. Эта функциональная совместимость реализуется с использованием специальной инфраструктуры обмена сообщениями с межкадровыми сообщениями. Для взаимодействия с веб-клиентом доступна одна и та же библиотека JavaScript (Office.js), которая используется на настольных клиентах.
Из-за упомянутой Песочницы при нажатии ссылки целевая страница отображается неправильно и показана частично. Удивительно, если я щелкнул правой кнопкой мыши по одной и той же ссылке и выберите «Открыть ссылку на новой вкладке», целевая страница будет показана в порядке, не пропуская ее содержимого.
Мой вопрос: В чем разница между использованием атрибута target='_blank'
в HTML и выбором опции «Открыть ссылку в новой вкладке» в браузере? И как я могу смоделировать опцию «Открыть ссылку в новой вкладке», чтобы мой плагин работал без необходимости прямого щелчка по ссылке.
P.S. Я пробовал это как в Firefox, так и в Chrome, и они имеют такое же поведение.
Что произойдет, если вы используете 'target =" _ self "? –
С 'target =" _ self "', ссылка исчезает и ничего не происходит. Кажется, что плагин запускается внутри iframe – Ali
. В этот момент я чувствую, что это проблема с самим API. –