#coffeescript
isIE = /msie/i.test(navigator.userAgent)
traverseChildren = (elem)->
pushAll = (elemArray) ->
q.push item for item in elemArray
children = [];
q = [];
q.push(elem);
while q.length > 0
elem = q.pop();
children.push(elem);
pushAll(elem.children);
return children;
mouseoutEvent = (event,dom,callback)->
elem = event.toElement || event.relatedTarget
list = traverseChildren(dom)
if elem in list
return;
callback()
return
appendEvent = (dom, event, fun) ->
if isIE
dom.attachEvent("on" + event, fun)
else
dom.addEventListener(event, fun, false)
return
hasClass = (ele,cls)->
if not ele
return
return ele.className.match(new RegExp('(\\s|^)'+cls+'(\\s|$)'))
addClass = (ele,cls)->
if not ele
return
if not hasClass(ele,cls) then ele.className += " "+cls
return
removeClass = (ele,cls)->
if not ele
return
if hasClass(ele,cls)
reg = new RegExp('(\\s|^)'+cls+'(\\s|$)')
ele.className=ele.className.replace(reg,' ')
return
getDomIndex = (e)->
i=0
while e.previousSibling
e=e.previousSibling
if(e.nodeType is 1)
i=i+1
return i
jsonp = (url)->
_href = window.location.href
if _href.indexOf('https://') is 0
url = url.replace('http://','https://')
methodName = 'jsonp' + Math.random().toString(36).substring(2)
data = null
callbackChain=[]
window[methodName] = (callbackData)->
data=callbackData
for m in callbackChain
m(data)
return
url=url.replace('callback=?','callback='+methodName)
script = document.createElement( 'script' )
script.setAttribute( 'src', url )
script.setAttribute( 'charset', "utf-8" )
document.getElementsByTagName( 'head' )[0].appendChild(script)
return {
done:(fun)->
if(data)
fun(data)
callbackChain.push(fun)
return
}
window.isIE = isIE
window.traverseChildren = traverseChildren
window.mouseoutEvent = mouseoutEvent
window.appendEvent = appendEvent
window.hasClass = hasClass
window.addClass = addClass
window.removeClass = removeClass
window.getDomIndex = getDomIndex
window.jsonp = jsonp
分享到:
相关推荐
org.geotools org.geotools.arcsde org.geotools.arcsde.data org.geotools.arcsde.data.versioning org.geotools.arcsde.data.view org.geotools.arcsde.filter org.geotools.arcsde.gce org.geotools....
platform-tools and build-tools for arm aarch64 34.0.3 build-tools/aapt build-tools/aapt2 build-tools/aidl build-tools/dexdump build-tools/split-select build-tools/zipalign platform-tools/adb platform-...
《PQTools.zip_3518ev200 pqtools_Pqtools_camera_hi3518e_hisilicon_p:深入解析Hi3518E摄像头图像处理技术》 在当前高度发达的数字影像领域,摄像头图像处理技术扮演着至关重要的角色。Hi3518E芯片作为海思半导体...
《VMware Tools for Windows:虚拟化环境中的高效工具》 VMware Tools是VMware公司为虚拟化环境提供的一款重要软件,对于在VMware虚拟机中运行Windows操作系统来说,它的安装至关重要。这个“vmwaretools windows....
VMware Tools是VMware公司开发的一套增强虚拟机性能和服务的软件工具,它为虚拟化环境提供了许多重要的功能。在本例中,我们讨论的是"vmwaretools-11.3.5.zip",这是针对Windows操作系统的11.3.5版本。这个版本的...
**Android SDK Tools 26.1.1** Android SDK Tools是Android开发者不可或缺的一部分,它包含了一系列用于构建、调试和发布Android应用的工具。版本26.1.1是一个重要的更新,旨在解决之前版本25.2.5中存在的一些问题...
《GeoTools汉语版资料》是一份详实的资源集合,主要针对使用GeoTools进行地理信息系统(GIS)开发的用户。GeoTools是一个开放源代码的Java库,它实现了OGC(Open Geospatial Consortium)标准,提供了对地理空间数据...
《Java地理工具库Geotools详解与应用》 在IT领域,尤其是在地理信息系统(GIS)开发中,Java的Geotools库是一个不可或缺的组件。本文将深入探讨Geotools的基本概念、主要功能以及如何利用其进行坐标转换,帮助...
FusionCompute Linux 操作系统挂载tools FusionCompute 是华为虚拟云平台的一部分,提供了强大的虚拟化管理能力。今天,我们将深入探讨 FusionCompute Linux 操作系统挂载tools 的过程。 卸载tools 在开始挂载...
GeoTools学习指南 GeoTools是一款功能强大的开源GIS(Geographic Information System)工具包,提供了丰富的API和插件,帮助开发者快速构建GIS应用程序。在本指南中,我们将详细介绍GeoTools的基本概念、库函数、...
**Geotools API 手册**是一份详细的技术文档,主要针对使用Geotools库进行地理信息系统(GIS)开发的程序员。Geotools是开源Java库,它提供了一系列的工具和接口,使得开发者能够轻松地在Java应用程序中处理、分析和...
VMware Tools 11.1.1支持以下来宾操作系统: windows.iso supports Windows 7 SP1 or Windows Server 2008 R2 SP1. VMware Tools 11.1.1依赖并附带用于Visual Studio 2015、2017和2019的Microsoft Visual C ++ ...
GeoTools是开源GIS(地理信息系统)领域的一个重要项目,它为Java开发者提供了处理地理空间数据的强大工具。这个“geotools18.1依赖jar包”是GeoTools库的第18.1版本,经过验证,它在使用时是稳定且无错误的。 Geo...
《GeoTools源码构建的关键依赖解析》 GeoTools是一个开源的Java库,专门用于地理信息系统(GIS)开发,它提供了一系列API和工具,使得开发者能够处理地理数据、地图以及空间操作。在构建GeoTools源码时,由于网络...
在本案例中,我们关注的是"build-tools 21.1.2.zip"这个特定的压缩包,它是针对Android SDK的构建工具的一个版本。下面我们将深入探讨Android SDK Build-tools及其重要性,以及如何进行升级。 首先,Android SDK ...
《GeoTools 18.4 用户指南:Java地理信息系统开发的宝典》 GeoTools是开源社区中的一个强大工具,专为Java开发者提供地理信息系统(GIS)的功能支持。这个18.4版本的用户指南是Java Geotools进行可视化开发的重要...
`OR-Tools`是谷歌推出的一个开源的、强大的优化工具箱,它支持多种编程语言,包括Java。本篇文章将深入探讨如何利用OR-Tools的Java API解决一个具体的实例——“人员排班问题”。 人员排班问题是一个典型的线性规划...
VMWare Tools是VMware公司为虚拟机环境提供的一套增强工具,它包含了多个优化虚拟机性能和用户体验的组件。在Windows环境下,VMWare Tools对于提升虚拟机效率、改善硬件兼容性和提供更流畅的操作体验至关重要。标题...
《GeoTools 18.4 开发离线JAR包详解》 GeoTools是一个开源的Java库,专门用于处理地理信息系统(GIS)的数据和任务。它提供了大量的API和工具,使得开发者能够轻松地在应用程序中集成地理空间数据处理功能。本次...