Javascript / Jquery从子文档中访问iframe中的元素属性

时间:2017-11-03 02:09:50

标签: javascript jquery iframe

我正在尝试创建一个显示多首歌曲的和弦图表的网络应用程序。它们内部的每个iframe都在不同的标签上。我正在使用jquery库。 每个图表使用ajax来查询数据库以获取数据以显示内容。它会为分页计算标题高度,页脚高度,页面高度和宽度等指标。 javascript从iframe内部运行,而不是从父级运行。

当我将页面加载为普通网页时,和弦图表页面会自行运行。但是,只要我在iframe中打开页面,页面就无法正确显示,因为我无法计算页面上的指标。似乎某些属性未定义。

我使用以下代码获取"页面" iframe中图表上的元素(作为示例)。

var x = window.parent.document.getElementById("iframe2");
if (x)  {var s = $(x).contents().find('#page'+ pagecounter) ;}
if (s) alert ($(s).attr("id"));

" S"正确识别并正确显示其ID。所以我知道选择了正确的元素。

但是,(举几个例子),

$(s).offset().top = 0 //when it should be 5
$(s).offset().left= 0 // should not be
$(s).css('padding-top') //is undefined.

当网页加载到iframe之外时,这些是正确的。尝试了我发现的与该问题相关的所有内容,但没有解决方案。

感谢一些帮助。

1 个答案:

答案 0 :(得分:1)

我正在将所有内容加载到jquery ui选项卡中,直到您单击该选项卡,该选项卡才是隐藏的div。因此它正在创建但未显示,因此无法确定指标