父母获得职位

时间:2015-01-05 06:22:07

标签: javascript jquery html css

我正在尝试使用jquery / javascript获取Div的位置。我有一个脚本来获得Div的位置,它的类是“内容”。我在广告公司工作,所以当我们在服务器上传代码时,会生成一个脚本,我们将其放在html页面中。脚本在iframe中加载,我们的代码在这里执行。

我的脚本在本地工作正常。这是我用来获得Div的位置的方法。

function ReadDivPos(selector) {
        var _divPos = "";

        $(selector).each(function() {
            var p = $(this).offset();
            var w = $(this).width();
            console.log("Top " + p.top) //top
            console.log("left " + p.left) //left
            console.log("right " + p.left + w) //right
            console.log("offsetWidth " + w); //width

            _divPos += "Left " + p.left + ",Width " + w + ",Avail Width " + window.screen.availWidth + ",Right " + (p.left + w) + "\\n";
        });
        return _divPos;
    }

    console.log(ReadDivPos(".content"));

它停止在客户页面上工作然后我意识到我必须调用父Div来获取值。我在google上搜索并找到了这段代码来获取我已修改的父div以获得我的div。

             var parentDoc = window;
                while (parentDoc !== parentDoc.parent) {
                    parentDoc = parentDoc.parent;
                }
                parentDoc = parentDoc.document;
                var parentDiv = parentDoc.getElementsByTagName('div');
                var divs = [];
                for (var i = 0; i < parentDiv.length; i++) {
                    if (parentDiv[i].className == "content") {

                        console.log("Div Class :content ");
                }
                }

现在,当我使用我的代码获取div的位置时,它无法正常工作

 function ReadDiv() {
     var parentDoc = window;
     while (parentDoc !== parentDoc.parent) {
         parentDoc = parentDoc.parent;
     }
     parentDoc = parentDoc.document;
     var parentDiv = parentDoc.getElementsByTagName('div');
     var divs = [];
     for (var i = 0; i < parentDiv.length; i++) {
         if (parentDiv[i].className == "content") {

             console.log("Div Class :content ");
             $(parentDiv[i].className).each(function() {
                 var p = $(this).offset();
                 var w = $(this).width();
                 console.log("Top " + p.top) //top
                 console.log("left " + p.left) //left
                 console.log("right " + p.left + w) //right
                 console.log("offsetWidth " + w); //width

                 _divPos += "Left " + p.left + ",Width " + w + ",Avail Width " + window.screen.availWidth + ",Right " + (p.left + w) + "\\n";
             });
  return _divPos;
         }
     }
 }

知道我在这里做错了吗?希望提前感谢HElp

0 个答案:

没有答案