iframe içindeki bir öğenin konumunu öğrenmek istiyorum. ,iframe'de html öğesinin dışarı çıkış konumu
//Function to find the position of element on page
function getElementPosition(elem){
var posX = 0;
var posY = 0;
while(elem!= null){
posX += elem.offsetLeft;
posY += elem.offsetTop;
elem = elem.offsetParent;
console.log("In function:" + elem.tagName + " " + posX + " " + posY);
}
return { x : posX, y : posY };
}
iframe tüm unsurların listesini almak için
var doc1 = $('#page1').get(0).contentDocument; // page1 is id of iframe element
var list1 = doc1.getElementsByTagName('*');
console.log(list1.length); // Printing correctly
var index = prompt("Enter element index");
var elem1 = list1[index];
var pos1 = getElementPosition(elem1);
console.log("Positions:" + pos1.x + " " + pos1.y);
Ama bu olmuyor: - Ben ot kullanımını çalışıyorum. Başlangıçta elem boş değil ama elem.offsetParent her durumda boş. Yanlış mı yapıyorum?
Bazı öğeler için iyi çalışıyor. Ancak, bazı öğeler için, offsetParent sıfırdır ve böylece offsetLeft 0'dır ve offetTop 0'dır.
Her öğenin konumunu bulmak için başka bir yol var mı? peşin
Teşekkür ..
belki http://stackoverflow.com/questions/306305/what-would-make-offsetparent-null Bunu dan yalnızca bir Iframe erişebilirsiniz –
size yardımcı olabilir sizin kendi etki alanı - Aynı Kaynak Politikası, diğer alanlardan Iframe'e erişimi kısıtlar. – Christoph
@Christoph Sayfa sadece diskin üzerindedir ... No Origin Policy hakkında başka soru yok – sachinjain024