top.frames不适用于chrome

我有3个html页面。 main.html,page1.html和page2.html。 我使用以下代码在main.html中显示page1.html和page2.html。

       

page1.html代码

      .content {display:none;}      
Result Details
Click on me to see more details in other page

R1 data

和Page2.html代码

    

我的JavaScript myjs.js

  $(document).ready(function () { $('table').on('click', 'tr', function () { var doc =window.top.frames['f2'].document; var divElmnt = $(doc.getElementById('myDiv')); $(divElmnt.html($(this).find('.content').html())); }); }); 

使用此代码,在单击表格行时,我可以在page2的“mydiv”div中显示div“content”内容。

这适用于IE和FF但不适用于Chrome。 错误:doc未定义。 chrome的window.top.frames [‘f2’]的等价物是什么。

为您的FrameSet和您的Frame提供一个ID:

 var $fs = $("#fs"); var f2 = $fs.find("#f2"); 

f2现在是一个jQuery对象。

问题出在本地文件的Chrome安全标志上,即file:///。 在使用“–allow-file-access-from-files”标志选项启动Chrome后,top.frames正常运行。

此外,我在这里找到了一个关于与JavaScript的帧间通信的有用文档。