我正在尝试创建一个显示多首歌曲的和弦图表的网络应用程序。它们内部的每个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之外时,这些是正确的。尝试了我发现的与该问题相关的所有内容,但没有解决方案。
感谢一些帮助。
答案 0 :(得分:1)
我正在将所有内容加载到jquery ui选项卡中,直到您单击该选项卡,该选项卡才是隐藏的div。因此它正在创建但未显示,因此无法确定指标