Opened 14 years ago

Closed 14 years ago

#6024 closed defect (fixed)

Errors when moving / opening dialogs in IE7

Reported by: guest Owned by: Douglas Hays
Priority: high Milestone: 1.1
Component: Dijit Version: 1.1b1
Keywords: Cc:
Blocked By: Blocking:


Upgraded a Dojo application in development to 1.1b1 / 1.1b2 and started having problems under IE 7 showing dialogs that were working previously. On open or moving a dialog, IE 7 is generating "Invalid Argument: Line 0" errors. Debuggers for IE (VS2005 and MS Script debugger) cannot show line of code generating error.

Same code on FFox works without any problems at all.

After spending some time, generated the sample test file below that reproduces the issue. To test, open dialog by clicking on the button and then try to move the dialog around on the screen, or close it. Debug console will get the Invalid Argument messages and/or IE will crash.

<!DOCTYPE HTML PUBLIC "-W3CDTD HTML 4.01EN" ""> <html> <head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>Opportunity Planner</title> <style type="text/css">

@import "../../common/dojo/dijit/themes/tundra/tundra.css";

</style> <script type="text/javascript" src="../../common/dojo/dojo/dojo.js.uncompressed.js"

djConfig="isDebug:true, parseOnLoad: true"></script>

<script type="text/javascript">

dojo.require("dojo.parser"); dojo.require("dijit.layout.ContentPane?"); dojo.require("dijit.form.TextBox?"); dojo.require("dijit.form.CheckBox?"); dojo.require("dijit.form.DateTextBox?"); dojo.require("dijit.form.Button"); dojo.require("dijit.Dialog"); dojo.require("dijit.form.FilteringSelect?"); dojo.require("dijit.form.NumberTextBox?"); dojo.require("dijit.form.ValidationTextBox?");

function showCreateDialog() {




</head> <body class="tundra">

<button id="create" dojoType="dijit.form.Button"


<script type="dojo/method" event="onClick">showCreateDialog();</script>


<!-- Create Dialog Hook --> <div dojoType="dijit.Dialog" id="createOpportunityDialog"

title="Create New Opportunity"

<div id="generalTab" dojoType="dijit.layout.ContentPane?" title="General" style="height:600px;width:600px">



<td style="text-align:right;"><label for="generalTab_name">Name:</label></td> <td colspan="3">

<input id="generalTab_name" dojoType="dijit.form.ValidationTextBox?" type="text" size="80"

maxlength="100" required="true">


</tr> <tr>

<td style="text-align:right;"><label for="generalTab_status">Status:</label></td> <td>

<select id="generalTab_status" dojoType="dijit.form.FilteringSelect?">

<option value="NS">Not Started</option> <option value="IP">In Progress</option> <option value="C">Complete</option> <option value="S">Suspended</option>


</td> <td style="text-align:right;" colspan="1"><label for="generalTab_targetDate">Target Completion



<input id="generalTab_targetDate" dojoType="dijit.form.DateTextBox?" size="9" maxlength="9">


</tr> <tr>

<td style="text-align:right;"><label for="generalTab_priority">Priority:</label></td> <td>

<select id="generalTab_priority" dojoType="dijit.form.FilteringSelect?" style="width:50px">

<option value="L">Low</option> <option value="M">Medium</option> <option value="H">High</option>


</td> <td style="text-align:right;"><label for="generalTab_risk">Risk:</label></td> <td>

<select id="generalTab_risk" dojoType="dijit.form.FilteringSelect?">

<option value="N">None</option> <option value="L">Low</option> <option value="M">Medium</option> <option value="H">High</option>






</div> </body> </html>

Change History (5)

comment:1 Changed 14 years ago by Adam Peller

Component: GeneralDijit
Owner: anonymous deleted

comment:2 Changed 14 years ago by Douglas Hays

This is a regression caused by revision [11952]

comment:3 Changed 14 years ago by Douglas Hays

Owner: set to Douglas Hays

comment:4 Changed 14 years ago by Douglas Hays

The IE css expression() is throwing an exception.

comment:5 Changed 14 years ago by Douglas Hays

Resolution: fixed
Status: newclosed

(In [12806]) Fixes #5562, #6024. Re-evaluation of IE's CSS expressions was causing a slow down. Occasionally the expressions would throw an error causing the "Invalid argument". Removed IE font-style and font-weight inheritance from input tags used in dijit widgets to prevent css expression re-evaluation. Font-family and font-size are still inherited by child input nodes as before, but if the parent node's font-family changes (unlikely), the child input node will not pick up the change. This prevents constant css expression re-evaluation. All font attributes can still be specified for the input node if the IE defaults are not acceptable.

Note: See TracTickets for help on using tickets.