0

我有个问题:

我有一个 100% 的动态站点,这意味着我在起始页上只有一个更新面板。所有内容都通过后面的代码动态添加到 default.aspx,不同的页面是 Web 用户控件。

当我想打开 2 个窗口(通过 ajax 控制工具包的可拖动面板)时,就会出现问题。

我想通过 javascript 定位这些面板,但定位 javascript 不运行。

请注意,我仍在网站的第一页,浏览器中没有返回历史记录;当我在网络浏览器中“查看源代码”时,我看到了登录页面的代码,这是网站打开时首先出现的代码。

我不希望任何导致页面历史的回发,如何执行 javascript 来定位我的窗口?

解决了

好吧,我通过将定位移动到服务器端解决了这个问题,我创建了一个“窗口管理器”来跟踪站点中所有打开的窗口。然后我只是通过将位置添加到我的 Web 用户控件中的 Style 属性来放置位置,如下所示:

    protected void Page_Init(object sender, EventArgs e)
    {
        PartPanel.Attributes.Add("Style", Position);
    }

    public string Position
    {
        get
        {
            return "position:absolute;left:" + PosX "px;top:" + PosY + "px;";
        }
    }
4

3 回答 3

0

我们可以有一些示例代码吗?

这种编码风格不是更容易和更适合通用处理程序,而不是在页面后面的代码中添加所有内容吗?我相信,这也将清除一些间接费用。

尝试使用 Chrome 的开发者工具,或者像 Firebug for Firefox 这样的扩展来查看源代码。这样您就可以查看和操作 DOM。您还有其他有用的工具,例如 JavaScript 控制台,可以记录任何错误。

于 2011-06-14T15:49:23.447 回答
0
 public void setPage(mshtml.HTMLWindow2Class JSFile) {
        window = JSFile;
}
public void scriptPrint(){
        window.execScript("report_back('Printing complete!')", "JScript");
}

或者

Page.RegisterStartupScript("myScript", "<script language=JavaScript>hi('" + whatever + "');</script>");
于 2011-06-14T15:50:15.083 回答
0

使用 FireFox 的 FireBug 插件可以解决您遇到的“无历史记录”问题,该插件将向您显示实时源代码。

与浏览器的“右键单击 > 查看源代码”选项相比,这具有很大的优势,我相信它会从服务器中检索新的代码。

于 2011-06-14T16:01:07.440 回答