【问题标题】:Javascript event on frame loaded加载框架上的 Javascript 事件
【发布时间】:2012-09-30 01:28:26
【问题描述】:

我不太明白如何在另一个框架发生更改时通知一个框架。

<frameset rows="*,50">
    <frame id="main_frame" src="mainframe" frameborder="0" name="main_frame">
    <frame id="footer" src="footer" frameborder="0" scrolling="no" noresize="noresize" name="footer">
</frameset>

页脚框架在加载后需要在大型机中设置一些值。如果用户加载另一个页面,则必须再次进行此设置。在页脚中,我希望在主框架完成加载(每次更改时)时有一个事件。

这可能吗(甚至可能使用 jQuery)?

【问题讨论】:

  • 试试
  • 我想这也行。我已将 onload 放入主框架的框架定义中(因为我想在它发生变化时发出信号)。你会把 foo() 在你的情况下放在哪里?它需要调用位于页脚包含的 javascript 中的方法。

标签: javascript jquery events frame jquery-events


【解决方案1】:

以下只是一个例子;我使用了 jQuery 的 load 事件,这段代码将放在你的 main_frame 框架中。它获取框架的父级,然后根据数组获取子级框架。希望您可以将其推断为您需要的内容。

在本例中,假设yourValue 变量是您的任一帧中的全局变量。

$(document).ready(function() {
    $(window).load(function (){
        window.parent.frames[0].yourValue = 4; // change values of main frame
        window.parent.frames[1].yourValue = 4; // change values of footer frame
    });
});

【讨论】:

  • 我不知道为什么,但事件没有被触发。我把它放到主框架...
  • @user1230724 我已经改变了我的答案,请看看它是否适合你。我已经使用了上面的,所以它应该。还要确保您正在加载 jquery。
猜你喜欢
  • 2010-09-13
  • 1970-01-01
  • 2015-10-19
  • 2018-07-09
  • 2012-02-12
  • 1970-01-01
  • 1970-01-01
  • 2015-05-27
  • 1970-01-01
相关资源
最近更新 更多