- 浏览: 90411 次
- 性别:
- 来自: 武汉
文章分类
最新评论
-
zhaohaolin:
哟,龙哥,你还搞C,好高大上的东西啊
xcode初探 -
robinqu:
又改了一些小错误~
[更新20100922]jQuery Location Select 插件- 地址联动、地理检测 -
robinqu:
kimm 写道这个功能不错,就是应用有点局限,内网就不好用了。 ...
[更新20100922]jQuery Location Select 插件- 地址联动、地理检测 -
robinqu:
更新了⋯⋯把代码重写了一次⋯⋯大家可以实现任何种类的联动,以及 ...
[更新20100922]jQuery Location Select 插件- 地址联动、地理检测 -
robinqu:
truth315 写道不好意思了,compu指的是getAre ...
JavaScript Prototype基础
Window Geometry
窗口几何关系
Screen坐标系是描述浏览器窗口和桌面之间的几何关系的,其坐标是相对于桌面左上角的。
Window坐标系描述了浏览器页面可视区域的几何关系,其坐标是相对于可视区域的左上角。
Document坐标系描述了HTML元素与document文档的几何关系,其坐标是相对于document对象的左上角的。
当document足够长而产生滚动条,document坐标系和window坐标系就会产生差异,两个坐标系之间就要考虑转换的方法。
IE在默认状态下将这些相关属性放在document.body下,但如果有<!DOCTYPE>声明,那么就会放在document.documentElement下。
以下是一个获取几何参数的函数
窗口几何关系
引用
Screen coordinates describe the position of a browser window on the desktop; they are measured relative to the upper-left corner of the desktop.
Screen坐标系是描述浏览器窗口和桌面之间的几何关系的,其坐标是相对于桌面左上角的。
引用
Window coordinates describe a position within the web browser's viewport; they are measured relative to the upper-left corner of the viewport.
Window坐标系描述了浏览器页面可视区域的几何关系,其坐标是相对于可视区域的左上角。
引用
Document coordinates describe a position within an HTML document; they are measured relative to the upper-left corner of the document. When the document is longer or wider than the viewport (as web pages often are), document coordinates and window coordinates are not the same, and you'll need to take the position of the scrollbars into account when converting between these two coordinate systems.
Document坐标系描述了HTML元素与document文档的几何关系,其坐标是相对于document对象的左上角的。
当document足够长而产生滚动条,document坐标系和window坐标系就会产生差异,两个坐标系之间就要考虑转换的方法。
引用
For some reason, IE places these window geometry properties on the <body> of the HTML document. And, further confusing matters, IE 6, when displaying a document with a <!DOCTYPE> declaration, places the properties on the document.documentElement element instead of document.body.
IE在默认状态下将这些相关属性放在document.body下,但如果有<!DOCTYPE>声明,那么就会放在document.documentElement下。
浏览器 | window对象坐标大小 | 可视区域大小 | 滚动条 | document对象坐标大小 |
FF | screenX/Y | innerWidth/Height | pageXOffset/YOffset | documentElement.scrollLeft/Top |
IE with doctype | screenLeft/Top | documentElement.clientWidth | documentElement.scrollLeft/Top/Height | documentElement.scrollLeft/Top |
以下是一个获取几何参数的函数
/** * Geometry.js: portable functions for querying window and document geometry * * This module defines functions for querying window and document geometry. * * getWindowX/Y( ): return the position of the window on the screen * getViewportWidth/Height( ): return the size of the browser viewport area * getDocumentWidth/Height( ): return the size of the document * getHorizontalScroll( ): return the position of the horizontal scrollbar * getVerticalScroll( ): return the position of the vertical scrollbar * * Note that there is no portable way to query the overall size of the * browser window, so there are no getWindowWidth/Height( ) functions. * * IMPORTANT: This module must be included in the <body> of a document * instead of the <head> of the document. */ var Geometry = {}; if (window.screenLeft) { // IE and others Geometry.getWindowX = function( ) { return window.screenLeft; }; Geometry.getWindowY = function( ) { return window.screenTop; }; } else if (window.screenX) { // Firefox and others Geometry.getWindowX = function( ) { return window.screenX; }; Geometry.getWindowY = function( ) { return window.screenY; }; } if (window.innerWidth) { // All browsers but IE Geometry.getViewportWidth = function( ) { return window.innerWidth; }; Geometry.getViewportHeight = function( ) { return window.innerHeight; }; Geometry.getHorizontalScroll = function( ) { return window.pageXOffset; }; Geometry.getVerticalScroll = function( ) { return window.pageYOffset; }; } else if (document.documentElement && document.documentElement.clientWidth) { // These functions are for IE 6 when there is a DOCTYPE Geometry.getViewportWidth = function( ) { return document.documentElement.clientWidth; }; Geometry.getViewportHeight = function( ) { return document.documentElement.clientHeight; }; Geometry.getHorizontalScroll = function( ) { return document.documentElement.scrollLeft; }; Geometry.getVerticalScroll = function( ) { return document.documentElement.scrollTop; }; } else if (document.body.clientWidth) { // These are for IE4, IE5, and IE6 without a DOCTYPE Geometry.getViewportWidth = function( ) { return document.body.clientWidth; }; Geometry.getViewportHeight = function( ) { return document.body.clientHeight; }; Geometry.getHorizontalScroll = function( ) { return document.body.scrollLeft; }; Geometry.getVerticalScroll = function( ) { return document.body.scrollTop; }; } // These functions return the size of the document. They are not window // related, but they are useful to have here anyway. if (document.documentElement && document.documentElemnet.scrollWidth) { Geometry.getDocumentWidth = function( ) { return document.documentElement.scrollWidth; }; Geometry.getDocumentHeight = function( ) { return document.documentElement.scrollHeight; }; } else if (document.body.scrollWidth) { Geometry.getDocumentWidth = function( ) { return document.body.scrollWidth; }; Geometry.getDocumentHeight = function( ) { return document.body.scrollHeight; }; }
发表评论
-
WebApp在移动端的涅盘- 另类的移动端应用程序开发
2010-09-27 22:35 4517同时欢迎到我的BLOG讨 ... -
ScriptDoc的Notation规则
2010-01-23 19:37 1789这个还是蛮重要的,以前就一直很羡慕Java有一套标准来着: 转 ... -
关于google.setOnLoadCallback()的一点研究
2010-01-12 10:01 6154google.setOnLoadCallback()是goog ... -
ECMA 推出 JavaScript 5
2009-12-28 21:17 1648转发自http://www.comsharp.co ... -
Javascript 事件编程 (二)
2009-09-18 21:28 1641Event Handlers and the this Key ... -
Javascript 事件编程 (一)
2009-09-04 15:27 1272Events and Event Handling 事件和事件 ... -
Javascript CSS编程 (一)元素定位、透明、内联样式
2009-09-03 14:29 2083Querying Element Position and S ... -
Javascript CSS编程 (二)Computed Styles、Class修改、操作样式表
2009-09-03 13:15 5376Scripting Computed Styles 计算样式 ... -
Javascript DHTML动画
2009-09-03 13:00 1241JS实现的动画效果多半 ... -
Javascript IE4 DOM
2009-09-02 17:14 1029很多IE独有的DOM特性是沿袭自IE4的,所以有必要看看IE4 ... -
Javascript 操控选择文本
2009-09-02 17:02 1280Querying Selected Text 查询选择的文本 ... -
Javascript 寻找文档元素
2009-09-02 16:51 2336Finding Elements in a Document ... -
JavaScript window下面的常用函数、属性
2009-09-02 10:30 1217我们常用的一些函数都是全局对象window下面的。这里将其梳理 ... -
JavaScript 在浏览器中的相关概念:执行环境、引入脚本、安全策略等
2009-09-02 09:32 1391The Window as Global Execution ... -
JavaScript Namespace模拟
2009-07-15 18:53 1577做JavaScript的大型项目比较痛苦,它没有namespa ... -
JavaScript Class模拟深入 - Duck Typing 和 Class相关的工具类
2009-07-15 17:16 1797Duck Typing 引用If it implements ... -
JavaScript 判定对象类型
2009-07-15 16:53 1387判定JS的对象类型基本 ... -
JavaScript Class模拟深入 - 继承、子类
2009-07-15 16:27 1735Superclasses and Subclasses ... -
javascript this 关键字小提示
2009-07-14 22:01 1195来自:http://www.macji.com/2009/01 ... -
JavaScript Class模拟基础
2009-07-14 16:39 1149Simulating Classes in JavaScrip ...
相关推荐
本主题聚焦于如何利用SuperMap iClient 6R for JavaScript实现地图对象的点击高亮显示,并弹出popup窗口展示其属性信息。这在GIS应用中是一个常见的需求,例如用于查看详情、进行数据分析或者提供用户交互体验。 ...
8.7 函数属性、方法和构造函数188 8.8 函数式编程194 第9章 类和模块201 9.1 类和原型202 9.2 类和构造函数203 9.3 JavaScript中Java式的类继承207 9.4 类的扩充210 9.5 类和类型212 9.6 ...
8.7 函数属性、方法和构造函数 8.8 函数式编程 第9章 类和模块 9.1 类和原型 9.2 类和构造函数 9.3 JavaScript中Java式的类继承 9.4 类的扩充 9.5 类和类型 9.6 JavaScript中的面向对象技术 9.7 子类 9.8 ECMAScript...
8.7 函数属性、方法和构造函数 8.8 函数式编程 第9章 类和模块 9.1 类和原型 9.2 类和构造函数 9.3 JavaScript中Java式的类继承 9.4 类的扩充 9.5 类和类型 9.6 JavaScript中的面向对象技术 9.7 子类 9.8 ...
8.7 函数属性、方法和构造函数 8.8 函数式编程 第9章 类和模块 9.1 类和原型 9.2 类和构造函数 9.3 JavaScript中Java式的类继承 9.4 类的扩充 9.5 类和类型 9.6 JavaScript中的面向对象技术 9.7 子类 9.8 ECMAScript...
8.7 函数属性、方法和构造函数188 8.8 函数式编程194 第9章 类和模块201 9.1 类和原型202 9.2 类和构造函数203 9.3 JavaScript中Java式的类继承207 9.4 类的扩充210 9.5 类和类型212 9.6 ...
ArcGIS API for JavaScript 是一套完备的库,提供了用于地图显示、交互以及地理数据操作的工具和方法,支持快速构建企业级地理空间应用。其开发涉及多个关键概念和技术点,接下来我们将根据提供的文件内容,深入探索...
1. **对象模型图**:对象模型图是API中各种对象、类和方法的可视化表示,它展示了它们之间的关系,有助于开发者快速理解API的结构和工作原理。在JavaScript API for ArcGIS Server中,主要包含Map、Layer、Geometry...
2.2.2ArcGIS API for JavaScript与Dojo的关系 2.3开发与调试工具 2.3.1集成开发环境 2.3.2调试工具 2.3.3Firebug 2.3.4其他工具软件 2.4Dojo基础知识 2.4.1JavaScript对象 2.4.2函数也是对象 2.4.3模拟类与继承 ...
气泡窗口的显示方法通常与点对象的交互紧密相关,它为用户提供了一种便捷的方式来查看和交互对象的详细信息。这种功能的实现常常需要设置气泡窗口的样式,以及如何在用户与点对象发生交互时触发气泡窗口的显示。 ...
8.7 函数属性、方法和构造函数 188 8.8 函数式编程 194 第9章 类和模块 201 9.1 类和原型 202 9.2 类和构造函数 203 9.3 javascript中java式的类继承 207 9.4 类的扩充 210 9.5 类和类型 212 9.6 javascript中的面向...
为了提高性能,开发者可以使用缓存策略,如使用TileLayer预加载常用区域的地图切片,或者利用GeometryService的静态方法优化几何对象的计算。 10. **移动设备支持(Mobile Support)** ArcGIS for JavaScript API...
1. **CSS重排(Reflow)**:当浏览器需要重新计算元素的几何属性时,就会发生重排。这可能是因为动态修改了元素的样式、添加或删除了元素、改变了元素的尺寸或位置等。重排可能导致整个页面或者部分区域重新渲染,...