2012-06-05 2 views
0

У меня есть несколько пользовательских компонентов HTML Home Custom под названием Custom_News, Custom_Articles и CUstom_Cases.Как мне настроить портал для автоматической настройки размера своего компонента?

Вот HTML для них:

<iframe src="/apex/NewsPage?id=a1TW0000000EJAL" frameborder="0" width="100%"></iframe>&nbsp;

<iframe src="/apex/Custom_Home" frameborder="0" width="100%"></iframe>&nbsp;

<iframe src="/apex/CasesPage" width="100%" frameborder="0"></iframe>&nbsp;

Это то, что мой клиент макет Домашняя страница портала выглядит следующим образом:

enter image description here

и это то, что пользовательские компоненты выглядеть, когда я войти в портал клиентов:

enter image description here

Как избавиться от полосы прокрутки? Я хочу, чтобы портал клиентов автоматически настраивал размер компонентов, чтобы ни один из компонентов не имел полос прокрутки. Как мне это сделать?

ответ

0

Это то, что я в конечном итоге делает:

<script language="JavaScript"> 
    function resizeIframe(newHeight, id){  
     document.getElementById(id).style.height = parseInt(newHeight,10) + 'px'; 
} 
</script> 
<iframe id="iframe2" src="/apex/NewsPage?id=a1TW0000000EJAL" frameborder="0" ="" onload="parent.resizeIframe(1.5*document.body.clientHeight,'iframe2');" height="100%" width="100%"></iframe> 
2

Вы можете попробовать динамически изменять высоту iframe с помощью JavaScript. Этот answer объясняет, как это осуществить.

Вот пример использования JavaScript provided:

<script language="JavaScript"> 
<!-- 
function autoResize(id){ 
    var newheight; 
    var newwidth; 

    if(document.getElementById(id)){ 
     newheight = document.getElementById(id).contentWindow.document.body.scrollHeight; 
     newwidth = document.getElementById(id).contentWindow.document.body.scrollWidth; 
    } 

    document.getElementById(id).height = (newheight) + "px"; 
    document.getElementById(id).width = (newwidth) + "px"; 
} 
//--> 
</script> 

<iframe src="/apex/NewsPage?id=a1TW0000000EJAL" frameborder="0" width="100%" onLoad="autoResize('iframe1');"></iframe>&nbsp;

<iframe src="/apex/Custom_Home" frameborder="0" width="100%" onLoad="autoResize('iframe1');"></iframe>&nbsp;

<iframe src="/apex/CasesPage" width="100%" frameborder="0" onLoad="autoResize('iframe1');"></iframe>&nbsp;

+0

В какой части Salesforce я поместил Javascript-файл? Как часть iframe знает, где искать функцию autoResize? –

+0

Попробуйте добавить его перед одним из ваших тегов iframe. –

+0

Я добавил его перед iframe и изменил код iframe, и он ничего не сделал. Полосы прокрутки все еще присутствуют. –

Смежные вопросы