473,405 Members | 2,185 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,405 software developers and data experts.

Disable DOM construction


Hi,

We need to generate a huge HTML page (only TABLE/TR/TD structure), for
a size of 5 Mo. The problem is when IE receive this html source, it
try to build a DOM with it. As result, it could be very long to
display the HTML page to the client.

Could we disable the DOM construction in IE?

Thanks!

Jul 23 '05 #1
8 1757


Rick wrote:
Could we disable the DOM construction in IE?


If you disable scripting in IE then it does not build a DOM.

--

Martin Honnen
http://JavaScript.FAQTs.com/
Jul 23 '05 #2

Thanks but we don't want to disable Javascript for all the pages in our
site, but only for this specific page...

Thx

Martin Honnen wrote:
Rick wrote:
Could we disable the DOM construction in IE?


If you disable scripting in IE then it does not build a DOM.

--

Martin Honnen
http://JavaScript.FAQTs.com/


Jul 23 '05 #3
Martin Honnen wrote:
If you disable scripting in IE then it does not build a DOM.
I find this statement interesting. Is it documented?

If I disable scripting (set Security Level high under Tools/Internet
Options/Security/Local Computer - this is with IE 6 under Win XP Pro,
SP 2) for the local computer and open the following c:\tmp\delme.htm
file then the second text shows black, consistent with your claim:

<html><head><title>DOM test</title></head>
<body>
<div style="color:blue" id="mydiv">Hi mom</div>
<div id="div2"
style="color:expression(document.getElementById('m ydiv').style.color)"Hi dad</div>

</body>
</html>

However, if I introduce delme.vbs as below, then the second text will
be colored blue, too. This doesn't necessarily contradict your claim
because it may be VBScript that is building the DOM, but I am mighty
suspicious because it is IE that is doing the rendering. How say you,
Martin?

set ie=createobject("InternetExplorer.application")
ie.visible = true
ie.navigate2 "c:\tmp\delme.htm"
while ie.readystate<>4: wscript.sleep 10: wend
set div2 = ie.document.getElementById("div2")
div2.style.color = "blue"

Csaba Gabor from Vienna

Jul 23 '05 #4
VK


Rick wrote:
Hi,

We need to generate a huge HTML page (only TABLE/TR/TD structure), for
a size of 5 Mo. The problem is when IE receive this html source, it
try to build a DOM with it. As result, it could be very long to
display the HTML page to the client.

Could we disable the DOM construction in IE?

Thanks!


Specially for such cases (more precisely - for their databound tables)
Microsoft has table-layout style attrubute.

So if you set table style:
table { table-layout: fixed}

IE will display new row as soon as it has data for it. By my
observation (not microtimed though) in this case the display speed is
proportional to the data stream speed.

Jul 23 '05 #5


Csaba Gabor wrote:
Martin Honnen wrote:
If you disable scripting in IE then it does not build a DOM.

I find this statement interesting. Is it documented?


No, I was guessing and should have said so.
And your thinking that while scripting inside the page can be disabled
nevertheless someone might automate IE with script from the outside is
correct and therefore you are right, the DOM is build nevertheless as it
looks.

--

Martin Honnen
http://JavaScript.FAQTs.com/
Jul 23 '05 #6
Martin Honnen wrote:
Csaba Gabor wrote:
Martin Honnen wrote:
If you disable scripting in IE then it does not build a DOM.


I find this statement interesting. Is it documented?


No, I was guessing and should have said so.
And your thinking that while scripting inside the page can be
disabled nevertheless someone might automate IE with script
from the outside is correct and therefore you are right, the
DOM is build nevertheless as it looks.


In principle a web browser must have an internal (software)
representation of the HTML just in order to display/present its
contents. Given modern software design the odds have go to be good that
that representation is a collection of co-operating objects (probably
C++ objects) that represent an object model themselves. The question
would then be the extent to which the object model that interacts with
scripts was something separate from (or parallel to) the object model
that the browser employed itself, or whether scripting just exposed an
interface to that object model. In the latter case the scriptable object
model would always be there regardless of whether it was scripted and in
the former case its creation may not be necessary whenever it could not
be scripted (but there would be no way of knowing/testing).

Given a sufficiently large page, and particularly a sufficiently large
table, I would not expect much improvement in load/display time to be
apparent either way. Working out just the layout for a table is a long
way form being trivial (worse if the browser is attempting progressive
rendering), and there must be some representation of the table in order
to do so.

Richard.
Jul 23 '05 #7
Thanks guys,

But we have already save the HTML page as a HTML file on disk (to
remove streaming delay) and when we re-open it, it take a long time too
(at least 30 secs for 5megs). We have try with a file of 2 and 5 megs
and it's very long even if it take time to display, I'm sure the major
part still the DOM construction. I will try your fixed table as css,
to look if it reduce time to display...

Thx

Jul 26 '05 #8
VK
Rick wrote:
Thanks guys,

But we have already save the HTML page as a HTML file on disk (to
remove streaming delay) and when we re-open it, it take a long time too
(at least 30 secs for 5megs). We have try with a file of 2 and 5 megs
and it's very long even if it take time to display, I'm sure the major
part still the DOM construction. I will try your fixed table as css,
to look if it reduce time to display...

Thx


Thinking over, nothing you can do while working with it as with one
file. I had to work with C# libraries text dumps (over 18,000 entries)
in both IE and Word and it was damn slow on 2Gh/512Mb.

It's just as it is: a 5-10 Mb doc cannot be displayed *immediately*,
unless you get on hold of Cray. Bu it will be problematic to supply a
Cray station to each of your customers ;-)

If we accept the point that no one needs the entire >5Mb *at once* then
there are some variants. Did you hear about tabular data binding? It's
still all on the client side, no server involved.

Jul 27 '05 #9

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
by: Anthony | last post by:
Hi, Can anyone help me out here, I'm looking for a design (pattern?) for a-synchronic construction of a class. I need this design in a framework which will run in a multithreaded system. I...
2
by: Steve | last post by:
Hi Folks, Sorry for this stupid question, but how do you handle errors during class construction. In other words, if I have a class that loads a file, and during loading, an error occurs, how do...
14
by: trying_to_learn | last post by:
i am on the chapter on copy construction in C++ in the code (see below), the author says if u pass the object by value as in HowMany h2 = f(h); ....then a bitwise object is created w/o calling...
6
by: Siv | last post by:
Hi, I have a form with a TabControl on it, I have 6 tabs across the top of the page. What I'd like to do is have all but the first and second tab visible when the app starts and then as the user...
4
by: ChairShot | last post by:
I want to disable intellisense. I'm using vb.net 2003 with visual studio. I am a college stundent and it is slowing me down so I can't finish my work. dos-man
9
by: surf_doggie | last post by:
Im not sure if this is the group to post in, if anyone knows a more appropriate one please let me know. Please consider the following example of a feature most all browsers have that I would...
7
by: BeautifulMind | last post by:
In case of inheritence the order of execution of constructors is in the order of derivation and order of destructor execution is in reverse order of derivation. Is this case also true in case...
15
by: Victor Bazarov | last post by:
Hello, Take a look at this program: ----------------------------------- class B { B(const B&); B& operator=(const B&); public: B(int);
2
by: Agnes | last post by:
My datagrid will let the user input the data row by row. However, there is one row which is read only (it may appear in 2nd row or 4th row.. whatever) How can I do that ?? Thanks in advance .
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.