Technology in terms you understand. Sign up for the Confident Computing newsletter for weekly solutions to make your life easier. Click here and get The Ask Leo! Guide to Staying Safe on the Internet — FREE Edition as my thank you for subscribing!

Why can't I login to this website until the page is fully downloaded?

Question:

I have a dial-up internet connection and the slow speed is probably the
problem, but lately I have noticed that on some web pages I have to let the
page completely load before I can hit login or whatever is the next logical
thing to do. If I hit login before the current page loads I’ll get the browser
error screen. Aren’t there supposed to be some interrupts in good programming
that allow the keyboard to take control of the situation before the web page is
completely loaded? One of the pages I am having trouble with is Discover Card
while Master Card works like a champ. I suppose I could minimize the problem by
using the other card as the main one.

I can only speculate, but I’ve got a pretty good hunch as to what’s going
on. It is likely a design issue, meaning that it’s a side effect of how that
particular web page is constructed.

Absolutely you can interrupt the page download, but the problem is that if
you do the browser may not yet have everything it needs to do what you’ve
asked.

Become a Patron of Ask Leo! and go ad-free!

The most likely problem is Javascript.

Or, more specifically, when Javascript gets downloaded and
when it gets executed during the process of downloading the web
page.

As a refresher, Javascript is a programming language. Instructions can be
written in Javascript which can then be included on a web page. The “scripts”,
as they’re called, then execute in your browser to perform various tasks. The
most common example are things like animated menus – when you mouse over a menu
on a web page and the menu changes color or automatically fly’s out or does
something else, that’s often Javascript at work behind the scenes.

As the web has grown and become more complex, and as bandwidth has
increased, web designers are using more and more Javascript to make more and
more functional websites that do more than just display a static page of
information. GMail and the various Google web-based applications are great
examples.

In my experience it’s very common for banking sites to use Javascript in
various ways for their login process and, I believe, to perform some additional
security checks at login time.

“… web designers are using more and more Javascript to
make more and more functional websites that do more than just display a static
page …”

So why does it work “early” for some and not for others?

It’s all about web page design.

And I think that’s best described if we look at a hypothetical sequence of
events when you download a web page (for the pendants out there, I’m not saying
this is exactly what happens: this is an over-simplification for
purposes of example):

  • You request the login page from your bank’s site.

  • Your browser begins downloading the HTML file that is that web page.

  • The browser may begin displaying the HTML before the file is completely
    downloaded. Typically this happens from the top of the page down, but this can
    be severely impacted by specific page design.

  • As it displays the page the browser encounters images, which are actually
    separate requests it then makes of your bank’s web server. It may make
    those requests when the image is encountered, or it may wait until the entire
    HTML file has been downloaded, or it may happen somewhere in between.

  • In addition, the browser may encounter Javascript, which may be either
    embedded in the HTML itself, or an external reference needing a separate
    request much like an image. Typically Javascript is executed as it’s
    encountered, though I don’t believe that’s guaranteed.

  • At some point that HTML file we started with finishes downloading.

  • At some point all the external references on that web page, like images and
    external javascript, finish downloading.

  • Any remaining Javascript that should be executed on page load should now be
    in place and can be executed.

  • The page is “done”.

That should be enough to at least theorize why logging in before a page has
completed download works for some sites and not for others.

Sites which require Javascript and reference it in the HTML file “early” –
before the login button is displayed or accessible – may work. By the time you
see and hit the login button all the pieces are in place for the login to
actually happen.

Sites which require Javascript but download and execute it “late” – some
time after the login button is displayed or accessible – may fail. If you click
the login button before that required Javascript has had an opportunity to
execute all the pieces are not in place for the login to actually
happen and the login fails.

And for completeness, sites that don’t require Javascript typically just
work.

As you’ve experienced you can quickly get a sense for which sites allow you
to login early. Unfortunately there’s no real remedy for the others. In some
cases all this is also impacted by how your browser chooses to perform its task,
so if you’re really motivated you can try the page in a different browser. It
might work, but it might not.

Do this

Subscribe to Confident Computing! Less frustration and more confidence, solutions, answers, and tips in your inbox every week.

I'll see you there!

1 thought on “Why can't I login to this website until the page is fully downloaded?”

  1. This may not apply to the website mentioned, but there are some sites don’t let you do anything until all the ads have loaded. Many of them are retrieved from third party servers which just adds to the bog time.

    Reply

Leave a reply:

Before commenting please:

  • Read the article.
  • Comment on the article.
  • No personal information.
  • No spam.

Comments violating those rules will be removed. Comments that don't add value will be removed, including off-topic or content-free comments, or comments that look even a little bit like spam. All comments containing links and certain keywords will be moderated before publication.

I want comments to be valuable for everyone, including those who come later and take the time to read.