如何将击键传播到HTML页面中的每一帧

本文关键字:一帧 传播 HTML | 更新日期: 2023-09-27 18:18:43

我的公司不允许我展示代码,所以我将尽可能地描述它。

我有一个包含4个框架的HTML页面。

  • 顶部一个包含标题和其他一些和用户名
  • 底部一个包含版本和其他信息
  • 左边一个包含菜单
  • 最后一个在右边,包含网站的内容。

每一帧包含一个.aspx页面。左框的页面不会改变,而写框上的页面几乎总是在变化。其他两个不重要。

我被要求添加通往不同地方的快捷方式。这些快捷方式包括F键。例如,F1将在新选项卡中打开PDF帮助文件,F2将引导到某个页面,等等…

我正在使用IE8,我不能更新它。我知道它已经使用了一些F键,但是我找到了一种方法来禁用它们调用的函数,以便我可以将它们用作我自己的快捷键。

我试图在Javascript中添加快捷键,该函数检查F键是否按下并释放。我已经成功地在我的左框架中添加了这个功能,它总是包含相同的。aspx页面,但是一旦我点击右框架,似乎我失去了对另一个的关注,快捷方式不再工作了。我的问题是,在正确的框架中,大约有100个不同的。aspx可以被调用,所以我不能在每个框架中添加Javascript函数。此外,我无法访问包含框架的HTML页面,因此我也无法在这里添加代码。

对我来说最好的是能够在我的左框中有快捷功能,即使焦点在我的右面板上,它也会被调用。

你知道这样的事情是否可能吗?或者你有其他的方法来解决这个问题吗?

谢谢。

(请原谅我语法不好,英语不是我的母语)

如何将击键传播到HTML页面中的每一帧

你需要在你需要的每一帧重复的功能(即JavaScript)。

你可以做的是创建一个基本页面,然后从它继承你的ASPX页面,例如:

public class PageWithShortcuts : System.Web.UI.Page
{
    // Add JavaScript-outputting functions and other shared functionality here
    private void Page_Load(object sender, System.EventArgs e)
    {
        RegisterStartupScript("mycode", "<script>...</script>");
    }
}

你的所有页面都继承自this:

public class CheckoutPage : PageWithShortcuts
{
   ...
}