2008-12-11 60 views
0

更新1:
无法在同事的电脑上重现此(相同的设置我的),所以我认为这是一个问题我的工作站,而不是一般的。IE6:在IIS window.onresize工作,炸毁asp.net开发服务器上

我会很感激,如果有人会关闭这个问题,因为我自己没有足够的声誉。

@MatthewMartin。感谢您的意见:-)


更新2:
不像我的同事,我有VS90sp1-KB945140-CHS.exe程序(SP1)和VS90SP1-KB957912-x86.exe程序(JS智能感知修复程序)安装在我的机器上。那出现是我们设置之间的唯一区别。我删除了他们两个,但这并没有解决我的问题。


在我的asp.net(C#)页面的JavaScript的一点点,当用户调整窗口大小调整的对象。

当我在我的DEV服务器(IIS)上使用IE6访问页面时,它的作品工作
当我使用IE6通过VS2008使用F5或CTRL-F5(两者都启动ASP.NET开发服务器)访问该页面时,其失败。它似乎进入无限循环的调整大小,其中adjSpreadsheetSize函数触发window.resize事件,其中调用adjSpreadsheetSize ...重复无限循环

我看到有不少人抱怨说IE6无法正确处理onresize事件,但没有人似乎有这个确切的问题。

任何想法为什么此代码在IIS上工作,但不在ASP.NET Development Server上?

下面的代码的相关部分:

[snip] 
<head> 
[snip] 
<script language="javascript" type="text/javascript"> 
    window.onresize = adjSpreadsheetSize; 
    window.onload = pageSetup; 

    //Change spreadsheet size to fill the window (viewport) below the entry form 
    function adjSpreadsheetSize() { 
     var objSS = document.getElementById("OWC_data"); 
     var winWidth = document.documentElement.clientWidth; 
     var winHeight = document.documentElement.clientHeight; 

     winHeight -= document.getElementById('form_body').offsetHeight; 

     objSS.height = winHeight; 
     objSS.width = winWidth; 
     return false; 
    } 

    function pageSetup() { 
     adjSpreadsheetSize(); 
    } 
</script> 

[snip] 
</head> 
<body> 
<form id="form1" runat="server" action="rawdata.aspx" method="get"> 
<div id="form_body"> 
[snip] 
</div> 
</form> 
<div id="OWC_container"> 
    <object id="OWC_data" classid="clsid:0002E559-0000-0000-C000-000000000046"> 
    </object> 
</div> 

我的设置:

  • 的WinXP专业版SP2
  • 微软的Visual Studio 2008版本9.0.21022.8 RTM
    • 安装版:专业
    • 的Microsoft Visual Basic 2008
    • 的Microsoft Visual C#2008
    • 的Microsoft Visual C++ 2008
    • 微软的Visual Studio 2008和工具的Office
    • 微软的Visual Web Developer 2008
    • 水晶Visual Studio 2008的基本报告
  • Microsoft .NET Framework Ver sion 3。5 SP1
  • 网站项目所居住的DEV服务器(映射为本地驱动器)

回答

0

因为这是你试图加载ActiveX对象上,也许你的MSIE被配置为信任比http://localhost:1235/foohttp://localhost以上?

与IIS其他差别VS ASP.NET开发服务器:

IIS只移交给ASPNET过滤器打开某些文件,ASP.NET开发服务器关闭所有到IIS。

此外,有时端口号的变化会改变行为。

0

我加入
alert("Viewport: " + document.documentElement.clientHeight + " - formHeight: " + formHeight + " = " + winHeight);

出于某种原因,在div “form_body” 翻转来回 “421” 和 “435”(14差)之间。因此,我添加了一个边框来尝试查看发生更改的位置... <div style="border: solid 1px red;" id="form_body">

而当边框在那里时,调整大小的工作。轻松重现...添加边框样式,重新调整大小3〜5次。删除边框,只要我喜欢坐下来观看,就会反复发射。

WTF?

相关问题