4

我有一个 JavaScript 方法,我需要在我的一个页面上运行,特别是onresize事件。

但是,我看不到如何从我的内容页面设置该事件。我希望我可以将它放在我的母版页上,但我不需要在使用该母版页的所有页面上调用该方法。

任何帮助,将不胜感激。

4

3 回答 3

4

将以下内容放在您的内容页面中:

<script type="text/javascript">

// here is a cross-browser compatible way of connecting 
// handlers to events, in case you don't have one
function attachEventHandler(element, eventToHandle, eventHandler) {
    if(element.attachEvent) {
       element.attachEvent(eventToHandle, eventHandler);
    } else if(element.addEventListener) {
       element.addEventListener(eventToHandle.replace("on", ""), eventHandler, false);
    } else {
    element[eventToHandle] = eventHandler;
  }
}

attachEventHandler(window, "onresize", function() {
    // the code you want to run when the browser is resized
});

</script>

该代码应该为您提供有关您需要做什么的基本概念。希望您使用的库已经有代码来帮助您编写事件处理程序等。

于 2008-08-28T21:25:35.003 回答
0

在您的内容页面 (C#) 中使用如下代码怎么样?

Page.ClientScript.RegisterStartupScript(this.GetType(), "resizeMyPage", "window.onresize=function(){ resizeMyPage();}", true);

因此,您可以resizeMyPage在 Javascript 中的某处定义一个函数,并且在调整浏览器大小时运行它!

于 2008-08-28T23:06:55.713 回答
0

我遇到了同样的问题,并且遇到了这篇文章:

重新访问 IE 调整大小错误

上面的代码可以工作,但是 IE 有一个问题,即当 body 标签改变形状时会触发 onresize。该博客提供了一种效果很好的替代方法

于 2009-05-20T10:06:50.810 回答