Случилась глупая история.
есть VF страница, которая используется как wide component на домашней странице. На VF странице есть гиперссылки - кликаешь на них и ВСЯ домашняя страница перегружается, что и требуется. И вся эта благодать длится пока ты не понимаешь, что редирект домашней страницы работает только пока у твоего юзера включен Дев Мод (для редактирования страниц). А у нормальных юзеров при клике на гиперссылку в компоненте происходит редирект в пределах wide component-ного iFrame...
Как правильно сделать редирект Home page из VFP-based wide component?
Почему-то кажется что ответ "никак", в лучшем случае открывать в новом окне или табике.
вроде получилось через onclick="parent.location.href ='...'
вот тут:
https://success.salesforce.com/answers?id=90630000000i8T8AAI
решение-то простое, но проблема "внезапная"
вот тут:
https://success.salesforce.com/answers?id=90630000000i8T8AAI
решение-то простое, но проблема "внезапная"
так же можно использовать window.top если память не изменяет
а кодик то нужно дописать, так как редирект теперь не работает для этой страницы, если она используется вне Домашней страницы. Причем опять проблема видна только если отключен Дев Мод!!!
нужно в коде чекать, есть ли там вообще "parent", ну и дальше действовать по результату...
Правильно рассуждаешь)
вот тут:
https://success.salesforce.com/answers?id=90630000000i8T8AAI
решение-то простое, но проблема "внезапная"
так же можно использовать window.top если память не изменяет
+1 причем этот вариант должен работать даже если ифрейма нет.
Хм, чей-то подобрел SF, раньше эти страницы на разных доменах лежали и пошурудить из iframe в родительском окне через JS не представлялось возможным. Кстати, по-моему эта проблема до сих пор есть если VFP component из managed package.
Ошибаешься. Всегда был доступ к window.top.location из iframe
Странно
http://salesforce.stackexchange.com/questions/38918/end-of-javascript-sidebar-workarounds
You can include JavaScript in your Visualforce page, but because the component is rendered in an iframe on the home page layout, the JavaScript can’t interact with the page that contains the component.
Возможно к какой-то доле parent окна из iframe всегда есть доступ, даже с разных доменов, не гуру JS.
Ты прав. Доступ только к window.top.location из iframe. Но этого вполне достаточно что бы перегрузить страницу.
да, вот так работает
<a onclick="window.top.location = '/{!r.url[0]}'" style="cursor: pointer" >...</a>