动态 SharePoint Web 部件宽度和高度

发布于 2024-08-02 00:50:37 字数 280 浏览 6 评论 0原文

我正在尝试动态调整 SharePoint Web 部件页面中 Web 部件的宽度和高度,以便它填满整个可用空间。 似乎无法从 SharePoint 中的 Web 部件属性编辑器窗口选择宽度和高度的百分比。 此外,尝试通过代码在 Web 部件实例上动态设置它会导致 SharePoint 抛出异常,导致不支持比例尺寸。

有什么方法可以使用例如 Javascript 来做到这一点吗? 我已经看到使用 jQuery 完成了类似的事情,但并不完全是我正在寻找的(而且我对 jQuery 不够熟悉,无法自己想出一些东西)。

I am trying to dynamically adjust the width and height of a web part in a SharePoint web part page so that it fills up the entire available space. It appears that there is no way to choose a percentage for width and height from the web part property editor window in SharePoint. Also, trying to dynamically set it on the web part instance through code results in SharePoint throwing an exception to the effect that proportional dimensions are not supported.

Is there any way to do this using, for example, Javascript? I've seen similar things done using jQuery, but not exactly what I'm looking for (and I'm not familiar enough with jQuery to come up with something on my own).

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

柠栀 2024-08-09 00:50:37

有一个可用的 Web 部件在此处执行此操作。 您还可以在 TechNet 社区(我也在那里找到了该 Web 部件):

function calcHeight() 
{ 
  //find the height of the internal page 
    var the_height= 
    document.getElementById('contentpage').contentWindow. 
      document.body.scrollHeight; 

  //change the height of the iframe 
  document.getElementById('contentpage').height= 
      the_height; 
}

contentpage 是 iframe 的 ID。

EndUserSharePoint 提供了 jQuery 解决方案

There is a web part available that does this here. You can also see a solution on TechNet communities from "potta vijay kumar" (where I found that web part too):

function calcHeight() 
{ 
  //find the height of the internal page 
    var the_height= 
    document.getElementById('contentpage').contentWindow. 
      document.body.scrollHeight; 

  //change the height of the iframe 
  document.getElementById('contentpage').height= 
      the_height; 
}

contentpage is the ID of the iframe.

A jQuery solution is available from EndUserSharePoint.

本王不退位尔等都是臣 2024-08-09 00:50:37

这就是我所做的:

我在中间 Web 部件内有一个 iFrame,我将在其中根据左侧 Web 部件菜单加载网页。 因此,我采用了放置两个 Web 部件的 元素(它是一个 元素,其类设置为 ms-bodyareaframe)

var head=$('td.ms-bodyareaframe');
$("#myFrame").height(head.position.height()).attr('src',unescape(loc));
$("#myFrame").parent().height(head.height()-50);

这将完美地重新调整 iframe 所在 Web 部件的大小。

注意:这可能不适用于所有情况

Here's what I did:

I had an iFrame inside the middle webpart, where I will be loading webpages based on the left web part menu. So I took the <td> element where both the webparts are placed (its a <td> element with class set as ms-bodyareaframe)

var head=$('td.ms-bodyareaframe');
$("#myFrame").height(head.position.height()).attr('src',unescape(loc));
$("#myFrame").parent().height(head.height()-50);

This will perfectly re-size the webpart where the iframe resides.

Note: this may not work in all cases

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文