你们中的任何人都知道是否可以根据 url(网页)大小更改 SmartPortal 的默认大小?默认为屏幕宽度的 1/3,高度为 250px。是否可以将其更改为采用整个屏幕宽度和其他高度?
Mayby 我必须为此创建一个 SmartPortal 插件或操作网页 DOM?
任何建议都会有所帮助:)
你们中的任何人都知道是否可以根据 url(网页)大小更改 SmartPortal 的默认大小?默认为屏幕宽度的 1/3,高度为 250px。是否可以将其更改为采用整个屏幕宽度和其他高度?
Mayby 我必须为此创建一个 SmartPortal 插件或操作网页 DOM?
任何建议都会有所帮助:)
我已经想通了(感谢 ShankarSangoli)。我使用 jQuery 来修改 iframe 高度。整个仪表板只是一个 html 表格,因此使用一些选择器我能够更改 iframe 高度。
这是我的代码:
<script type="text/javascript">
$(document).ready(function () {
//SmartPortal name
var SPname = 'Name of SmartPortal';
//function usage
resizeSP(SPname, 400);
});
function resizeSP(SP, size) {
$("table.TitleText td.TitleText:contains(" + SP + ")", parent.document).closest('#title-bar').parent().next().find('#contentNode').children(":first").css("height", size);
}
</script>
但是有一些限制!!!SmartPortal 使用的 html 页面必须与 Pivotal 位于同一域中(JavaScript 安全限制),因此我将文档保存在本地驱动器上,并在 SP 属性中使用相对 URL。
如果您想在域外使用网页,只需创建一个包含带有目标 URL 的 iframe 的 html 文档并将其加载到 Pivotal 中。像这样:
<html>
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
//SmartPortal name
var SPname = 'SP name;
//usage
resizeSP(SPname, 400);
});
function resizeSP(SP, size) {
$("table.TitleText td.TitleText:contains(" + SP + ")", parent.document).closest('#title-bar').parent().next().find('#contentNode').children(":first").css("height", size);
}
</script>
<style type="text/css">
* {
margin: 0;
padding: 0;
overflow: auto;
height: 100%;
}
iframe {
display:block;
width:100%;
border:none;
}
</style>
</head>
<body>
<iframe src="http://www.yoursite.com"></iframe>
</body>
我希望它对任何人都有帮助:)