【问题标题】:Windows Phone 7 WebBrowser content heightWindows Phone 7 WebBrowser 内容高度
【发布时间】:2011-05-27 12:03:14
【问题描述】:

我想根据内容高度动态设置WebBrowser控件的高度。

我的场景是:在那个特定的视图上,我有不同的元素——图像、MediaElement 等,以及在那个 WebBrowser 控件中呈现的那些富文本之间。为了实现统一滚动,我将所有内容包装在一个滚动视图中,并在 webbrowser 控件上禁用滚动。

目前我有一个JavaScript 方法,当body 完成加载并将高度信息发送到C# 代码隐藏时调用该方法,但计算出的高度不正确。

我今天的技巧基本上是将返回值乘以大约 1.75

在页面标题中,我有以下元标记:

<meta charset='Windows-1257'>
<meta name='viewport' content='width=device-width' />
<meta name='viewport' content='user-scalable=no' />
<meta name='viewport' content='initial-scale = 1.0' />
<meta name='HandheldFriendly' content='true' />"
<meta name='target-densitydpi=device-dpi' />

这是我的body 标签。

<body onLoad="SendDataToPhoneApp()" style="margin:0px;padding:0px;">

我的JavaScript 函数:

<script>
    function getDocHeight() {
        return document.getElementById('pageWrapper').offsetHeight;
    }
    function SendDataToPhoneApp() {
        window.external.Notify('' + getDocHeight());
    }
</script>

pageWrapperbody 的直接子代。

【问题讨论】:

  • 看起来你正在尝试这个问题的答案所建议的方法:stackoverflow.com/questions/4684307/… 我建议尝试'document.body.clientHeight'。我不知道您有哪个元素的 id 为“pageWrapper”。如果您可以提供有关您返回的高度值以及您期望的值的更多详细信息,那将有所帮助。哪个元素上有'pageWrapper' id?另外,我很好奇你的场景。为什么要将 WebBrowser 高度设置为内容高度?

标签: windows-phone-7 webbrowser-control


【解决方案1】:

尝试在您的 Javascript 中使用 document.body.clientHeight。此外,如果您在 WebBrowser 中构建所有内容,您的场景可能会更好。当然,您可以将图像放在 HTML 中,也可以为您的 MediaElement 放置一个静止帧占位符图像,调用 C# 并在需要时弹出一个真正的 MediaElement。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-18
  • 1970-01-01
  • 2011-10-14
  • 1970-01-01
  • 2013-10-13
相关资源
最近更新 更多