IE6: window.onresize работает на IIS, взрывается на сервере asp.net Dev

Обновление 1:
Невозможно воспроизвести это на компьютере коллеги (такая же установка, как у меня), поэтому я предполагаю, что это проблема моей рабочей станции, а не общая.

Буду признателен, если кто-нибудь закроет этот вопрос, поскольку у меня недостаточно репутации, чтобы сделать это самому.

@MatthewMartin. Спасибо за ваши комментарии :-)


Обновление 2:
В отличие от моего коллеги, на моем компьютере установлены VS90sp1-KB945140-ENU.exe (SP1) и VS90SP1-KB957912-x86.exe (исправление JS Intellisense). Это появляется - единственное различие между нашими настройками. Я удалил их обоих, но это не решило мою проблему.


На моей странице asp.net (C#) есть немного Javascript для изменения размера объекта, когда пользователь изменяет размер окна.

Когда я открываю страницу с помощью IE6 на моем сервере DEV (IIS), это работает.
Когда я открываю страницу с помощью IE6 через VS2008, используя F5 или CTRL-F5 (оба из которых запускают сервер разработки ASP.NET), это терпит неудачу. Кажется, входит бесконечный цикл изменения размера, когда функция adjSpreadsheetSize запускает событие window.resize, которое вызывает adjSpreadsheetSize ... Повторять до бесконечности

Я вижу довольно много людей, которые жалуются, что IE6 не может должным образом обрабатывать события onresize, но, похоже, ни у кого нет этой конкретной проблемы.

Есть идеи, почему этот код работает на IIS, но не на сервере разработки ASP.NET?

Вот соответствующая часть кода:

[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 Pro с пакетом обновления 2 (SP2)
  • Microsoft Visual Studio 2008 версии 9.0.21022.8 RTM
    • Установленная версия: Professional
    • Microsoft Visual Basic 2008
    • Microsoft Visual C# 2008
    • Microsoft Visual C++ 2008
    • Инструменты Microsoft Visual Studio 2008 для Office
    • Microsoft Visual Web Developer 2008
    • Crystal Reports Basic для Visual Studio 2008
  • Microsoft .NET Framework версии 3.5 с пакетом обновления 1 (SP1)
  • Проект веб-сайта находится на сервере DEV (отображается как локальный диск)
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
0
847
2

Ответы 2

Поскольку это объект activex, который вы пытаетесь загрузить, возможно, ваш MSIE настроен на доверие http: // localhost больше, чем http: // локальный: 1235 / foo?

Другие отличия IIS от сервера разработки ASP.NET:

IIS передает только некоторые файлы фильтру aspnet, сервер разработки ASP.NET полностью переключает на IIS.

Кроме того, иногда изменение номера порта приводит к изменению поведения.

Я добавил
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 раз. Удалите бордюр, и он постоянно срабатывает, пока я сижу и смотрю на него.

Какого черта?

Другие вопросы по теме