1

在我的父窗口中,显示的选项卡很少。在父窗口上,我认为有一些点击代码,但我无法访问或查看父页面。

$(document).ready(function(){
    $('.tab').click(function(){
        // Do something. Show/Hide tab panel according to tabs
    });
})

在 I 框架窗口上

$(document).ready(function(){
   // Add new tab in the parent window from I frame.
   $("#ParentTab", parent.document).after('<a href="#" class=".tab" tabid="newtab">New Tab</a>');
   // Add the panel in parent window for this new tab
   $("#ParentTabPanel", parent.document).after('<div tabid="newtab">Some Content</div>');
})

此代码工作正常,没有显示任何 js 错误。iframe 内容已成功加载并在父窗口中添加了选项卡。但是当我单击 NewTab 时,它不会显示标签面板。奇怪的是当我 ctrl+refresh 浏览器时它可以工作。

第一次加载时我不会工作,为什么?请帮我解决这个问题。将父选项卡单击事件复制到新添加的选项卡。可能吗?如何检查。

4

1 回答 1

0

您的新选项卡是动态添加的,不会设置事件处理程序。

您可以在文档对象上注册处理程序:

$(document).ready(function(){
$(document).on('click', '.tab' ,function(){
// Do something. Show/Hide tab panel according to tabs
});
})

子窗口的 'ready' 事件可能在父窗口的 'ready' 事件之后触发。使第一页加载不起作用。

于 2013-07-01T06:26:16.530 回答