`
lu007heng
  • 浏览: 23708 次
  • 性别: Icon_minigender_1
  • 来自: 南京
最近访客 更多访客>>
社区版块
存档分类
最新评论

zz如何在js中获得div的位置(一段封装好的代码)

阅读更多
function getElementPos(elementId){
    var ua = navigator.userAgent.toLowerCase();
    var isOpera = (ua.indexOf('opera') != -1);
    var isIE = (ua.indexOf('msie') != -1 && !isOpera); // not opera spoof
    var el = document.getElementById(elementId);
    if (el.parentNode === null || el.style.display == 'none') {
        return false;
    }
    var parent = null;
    var pos = [];
    var box;
    if (el.getBoundingClientRect) //IE
    {
        box = el.getBoundingClientRect();
        var scrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop);
        var scrollLeft = Math.max(document.documentElement.scrollLeft, document.body.scrollLeft);
        return {
            x: box.left + scrollLeft,
            y: box.top + scrollTop
        };
    }
    else 
        if (document.getBoxObjectFor) // gecko    
        {
            box = document.getBoxObjectFor(el);
            var borderLeft = (el.style.borderLeftWidth) ? parseInt(el.style.borderLeftWidth) : 0;
            var borderTop = (el.style.borderTopWidth) ? parseInt(el.style.borderTopWidth) : 0;
            pos = [box.x - borderLeft, box.y - borderTop];
        }
        else // safari & opera    
        {
            pos = [el.offsetLeft, el.offsetTop];
            parent = el.offsetParent;
            if (parent != el) {
                while (parent) {
                    pos[0] += parent.offsetLeft;
                    pos[1] += parent.offsetTop;
                    parent = parent.offsetParent;
                }
            }
            if (ua.indexOf('opera') != -1 || (ua.indexOf('safari') != -1 && el.style.position == 'absolute')) {
                pos[0] -= document.body.offsetLeft;
                pos[1] -= document.body.offsetTop;
            }
        }
    if (el.parentNode) {
        parent = el.parentNode;
    }
    else {
        parent = null;
    }
    while (parent && parent.tagName != 'BODY' && parent.tagName != 'HTML') { // account for any scrolled ancestors
        pos[0] -= parent.scrollLeft;
        pos[1] -= parent.scrollTop;
        if (parent.parentNode) {
            parent = parent.parentNode;
        }
        else {
            parent = null;
        }
    }
    return {
        x: pos[0],
        y: pos[1]
    };
}

 看的别人博客上的,帮了我大忙啊~传上来,好代码一起分享。

分享到:
评论

相关推荐

    base zz zz zz zz

    base zz zz zz zz zz base zz zz zz zz zz base zz zz zz zz zz base zz zz zz zz zz

    zz CAD快速计算长度插件

    在CAD中想要快速测量长度,在CAD工具栏找到加载应用程序,再点击加载 加载成功后在输入栏输入“zz”(不分大小写)在选择你需要测量的线段即可。

    超出NLO QCD的高横向动量的ZZ产生

    最重要的是,我们将来自胶子-胶子通道的胶子-融合ZZ + jet贡献添加到我们的合并样本中,胶子-胶子通道正式是N3LO,并在NLO上为胶子-融合机理提供了近似结果。 这些预测是使用VBFNLO软件包获得的,包括Z玻色子的轻子...

    天猫雪花悬浮代码 淘宝下雪代码下载

    天猫雪花悬浮代码 淘宝下雪代码下载 最新悬浮

    ZZ561401.CAB

    ZZ561401.CAB ZZ561401.CAB ZZ561401.CAB

    爱心代码 zz.zipz

    爱心代码的实现

    在pp碰撞中测量ZZ生产截面和Z→分支分数

    质子-质子碰撞中的四轻子产生,pp→(Z /γ⁎)(Z /γ⁎)→ℓ+ℓ-ℓ′+ ℓ′-,其中ℓ,ℓ′= e或μ,在 大型强子对撞机的CMS检测器的质心能量为13 TeV。 数据样本对应于2.6 fb $ ^ {-1} $的综合亮度。 对于具有两...

    zz经典C代码.rar_C语言 图像_ZZ丫C香烟代码

    自己整理的一些东西,我觉得是学习C语言图像变成的好资料,要得就下吧!

    wincc AX NF ZZ

    wincc SIMATIC WinCC是第一个使用最新的32位技术的过程监视系统,具有良好的开放性和灵活性。 从面市伊始,用户就对SIMATIC WinCC印象深刻。

    geebinf modified by zz.ens

    写中文文章,或者外文,参考文献格式。例如:[1] Niu M, Hu Y, Sun S, et al. A novel hybrid decomposition-...下载好后放入endnote安装位置的style文件夹,在endnote样式选择栏里选择该样式即可。文献引用链接选择RIS

    Ant构建中使用JS脚本方法

    上面的项目的工程数据库代码 博文链接:https://zz563143188.iteye.com/blog/1819765

    zz_layer.rar

    zz_layer.il是源代码,install.bat是安装的 使用举例:zz 1-3 4 126 127 层号定义,与PADS类似:1~120是etch ;SolderMask: 121(top) 128(bot) ;Silkscreen: 126(top) 129(bot) ;Assembly: 127(top) 130(bot) ;Paste...

    14 个快速简洁的单行 JavaScript 代码解决方案

    在编程中,解决同一个问题通常有多种方法。这些解决方案在不同方面可能有所不同,例如长度、性能、使用的算法、可读性等。 在本文中,我们将研究几种快速简洁的单行解决方案,以解决 JavaScript 中经常出现的各种...

    元器件封装库

    元器件封装库 包含阻容、三极管、二极管、变压器、数码管等,内容齐全

    高仿微信,iOSAppTemplate代码重构 此版本TLChat基于TLKit、 ZZFLEX实现

    高仿微信,iOSAppTemplate代码重构。此版本TLChat基于TLKit、 ZZFLEX实现

    一维量子XX-ZZ模型的关联函数与协作参量

    一维量子XX-ZZ模型的关联函数与协作参量,钟鸣,,采用把一维量子XX-ZZ模型映射到周期XY模型的方法,数值研究了该模型的关联函数及量子相变类型,以及协作参量在相变点附近的行为。�

    ASP.ENT中应用javascript分页

    <span id="a3"></span> (--pageno)">上一页</a>  (++pageno)">下一页</a></div> </body> <script> var a = document.getElementById("all").getElementsByTagName("li"); var zz =new Array(a.length) for(var...

    ZZ_MODIFIED_GEEBINF.ENS.zip

    最近搞毕业论文参考文献格式搞了好久终于搞定了,分享给大家,是在之前的一个资源基础上加了一些设置就好了,有需要的可以拿去~

    3_Level_ZZ_Semafor.zip_3 level_zz_3_Level_ZZ_semafor_ZZ Semafor_

    ,主图指标,顶底信号,突破,转折信号,都很明显

    Html+div+CSS布局

    资源中包含html+CSS+div的布局练习,其中包括固定布局、流式布局、浮动布局、定位布局等布局方式的练习Demo,另外还对CSS中的一些特殊的属性进行了练习,包括position、float、display等属性,对每一个属性和布局的...

Global site tag (gtag.js) - Google Analytics