asp.net中自动获取页面高度

asp.net中自动获取页面高度,第1张

页可见区域宽: documentbodyclientWidth

网页可见区域高: documentbodyclientHeight

网页可见区域宽: documentbodyoffsetWidth (包括边线的宽)

网页可见区域高: documentbodyoffsetHeight (包括边线的高)

网页正文全文宽: documentbodyscrollWidth

网页正文全文高: documentbodyscrollHeight

网页被卷去的高: documentbodyscrollTop

网页被卷去的左: documentbodyscrollLeft

网页正文部分上: windowscreenTop

网页正文部分左: windowscreenLeft

屏幕分辨率的高: windowscreenheight

屏幕分辨率的宽: windowscreenwidth

屏幕可用工作区高度: windowscreenavailHeight

屏幕可用工作区宽度: windowscreenavailWidth

var win_w = $(window)width();//获取宽度

var win_h = $(window)height();//获取高度

如果你想要匹配高度,那么,就是页面刚刚打开其实没有数据,是等页面打开,计算了屏幕高度之后,再根据每条数据的高度计算出条数,再利用ajax的异步传输去读取列表,然后用JS呈现在手机网页中的。

如何用获取网页高度?这是一个贴子

环境:

VS2005 C# WinForm (特别注明:不是ASPnet)

原先用这个方法(在DocumentCompleted事件函数里):

webBrowser1DocumentBodyScrollRectangleHeight

绝大多数情况下,这个方法能够正确返回网页高度。但个别情况下却不行,获取到高度明显小于实际网页高度。

这种网页有个特点,就是它包含加载的组件。我认为DocumentBodyScrollRectangleHeight在这里发生错误是因为没有计算上网页组件所加载的高度。开始我以为是加载较慢所致,于是又额外设了几秒延迟获取DocumentBodyScrollRectangleHeight,结果还是不行。

有点麻烦了,哪位大虾有解决办法?

有了些进展:

使用这个:thisextendWebBrowser1DocumentBodyOffsetRectangleBottom

针对我开头所提到特殊页面。它虽然比实际网页高度相同还是小一些,但基本上不影响浏览了。

下面是我从网上找到的资料(应该是人工翻译的):

我一直从 WebBrowser 控件的文档属性获取 web 页的高度的最后几天。

这是我最新的尝试。

HtmlElementCollection children = webBrowserDocumentAll; int maxOffset = 0; foreach (HtmlElement child in children) { int bottom = 0; bottom = childOffsetRectangleBottom; if (bottom > maxOffset) { maxOffset = bottom; pageHeight = maxOffset; } } 我试了通过在页中找到最低的元素的偏移的底部出页面的最大高度。

问题是页的这在大多数情况下试管苗 500px 有关的实际长度。

任何人如有任何意见吗?我不敢相信只是为了获得一个页面的高度是多么困难 !

问题: Unknown

来自这个问题: stackoverflowcom

答案

找到 BODY 标签,并获得 OffsetRectangleBottom 的该元素。 这会给你页面的高度。

网页可见区域宽: documentbodyclientWidth

网页可见区域高: documentbodyclientHeight

网页可见区域宽: documentbodyoffsetWidth (包括边线的宽)

网页可见区域高: documentbodyoffsetHeight (包括边线的高)

网页正文全文宽: documentbodyscrollWidth

网页正文全文高: documentbodyscrollHeight

网页被卷去的高: documentbodyscrollTop

网页被卷去的左: documentbodyscrollLeft

网页正文部分上: windowscreenTop

网页正文部分左: windowscreenLeft

屏幕分辨率的高: windowscreenheight

屏幕分辨率的宽: windowscreenwidth

屏幕可用工作区高度: windowscreenavailHeight

屏幕可用工作区宽度: windowscreenavailWidth

` font-family: PingFang SC,STHeitiSC-Light,Helvetica-Light,arial,sans-serif,Droid Sans Fallback;

<meta name="viewport" content="width=device-width, initial-scale=10, maximum-scale=10, user-scalable=0">

<body onselectstart="return false">

white-space: pre-wrap;

-webkit-tap-highlight-color: transparent;

注意到“pre-wrap”属性值:保留空白符序列,但是正常地进行换行。

white-space:pre-wrap;

filter: brightness(100); 变白

第二行变第一行不变

body{}

小程序上fixed成功过

一般这种都让ios或者安卓端禁止掉,然后在有d性需求的页面添加样式

overflow-y: scroll;

-webkit-overflow-scrolling : touch;

即可

-webkit-overflow-scrolling: touch;

//小程序 h5 交互

touches: 当前屏幕上所有触摸点的列表;

targetTouches: 当前对象上所有触摸点的列表;

changedTouches: 涉及当前(引发)事件的触摸点的列表

通过一个例子来区分一下触摸事件中的这三个属性:

1 用一个手指接触屏幕,触发事件,此时这三个属性有相同的值。

2 用第二个手指接触屏幕,此时,touches有两个元素,每个手指触摸点为一个值。当两个手指触摸相同元素时,targetTouches和touches的值相同,否则targetTouches 只有一个值。changedTouches此时只有一个值,

为第二个手指的触摸点,因为第二个手指是引发事件的原因

3 用两个手指同时接触屏幕,此时changedTouches有两个值,每一个手指的触摸点都有一个值

4 手指滑动时,三个值都会发生变化

5 一个手指离开屏幕,touches和targetTouches中对应的元素会同时移除,而changedTouches仍然会存在元素。

6 手指都离开屏幕之后,touches和targetTouches中将不会再有值,changedTouches还会有一个值,

此值为最后一个离开屏幕的手指的接触点。

3touchmove事件对象的获取

想要在touchmove:function(e,参数一)加一个参数,结果直接使用epreventDefault()就会 e 报错,处理方法为使用arguments[0]获取event参数

touchmove:function(e,参数一){

var e=arguments[0]

epreventDefault()

}

webpack-config dev-server 添加 disableHostCheck: true,

html的font-size还没设置的时候展示的样式是错误的

关于获取各种浏览器可见窗口大小的一点点研究

经本地测试和研究再次对 documentdocumentElementclientWidth 进行解释:

每一个html文件在浏览器中都会被解析为一个页面,documentdocumentElementclientWidth则是获取本页面的宽度。

下面进行举例子说明:

1) 如果在浏览器全屏,并且打开的一个标签页中只包含一个页面,则documentdocumentElementclientWidth即本页面的宽度=浏览器的宽度=屏幕可用工作区宽度:即windowscreenavailWidth;

2)当调整浏览器为非全屏状态时并且打开的一个标签页中只包含一个页面:则documentdocumentElementclientWidth即本页面的宽度=浏览器的宽度!=屏幕可用工作区宽度:即windowscreenavailWidth;

3)当打开的一个标签页中不只包含一个页面:比如在一个页面的frame中包含一个ifrme,该iframe指向另一个页面,如下所示

则iframe指向页面的documentdocumentElementclientWidth不再等于浏览器宽度,而是等于ifame的宽度

网页可见区域宽: documentbodyclientWidth

网页可见区域高: documentbodyclientHeight

网页可见区域宽: documentbodyoffsetWidth (包括边线的宽)

网页可见区域高: documentbodyoffsetHeight (包括边线的高)

网页正文全文宽: documentbodyscrollWidth

网页正文全文高: documentbodyscrollHeight

网页被卷去的高: documentbodyscrollTop

网页被卷去的左: documentbodyscrollLeft

网页正文部分上: windowscreenTop

网页正文部分左: windowscreenLeft

屏幕分辨率的高: windowscreenheight

屏幕分辨率的宽: windowscreenwidth

屏幕可用工作区高度: windowscreenavailHeight

屏幕可用工作区宽度: windowscreenavailWidth

--------------这种问题网上一搜一大把,关键是要理解其中JS获取的原理----------

以上就是关于asp.net中自动获取页面高度全部的内容,包括:asp.net中自动获取页面高度、js如何根据不同屏幕的大小,获得页面高度,自动调整列表高度、WebBrowser怎么获取网页高度等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9307257.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存