Image + Text swap question

Discussion in 'Javascript' started by Randell D., Oct 6, 2003.

  1. Randell D.

    Randell D. Guest

    Folks,
    I'm still learning javascript - I've invested in a couple of books and
    reading online as much as possible. I'm pretty sure what I am suggesting is
    possible though I'm trying to weigh up the faults that might go with the
    suggestion... all opinions welcome.

    My question: I have a list of links that go to pages that have a similar
    layout. Could I have a text swap, similar to what I've seen with image swaps
    (or an image switch) whereby instead of loading a seperate page, text and
    image is just replaced?

    Other than not being accessable by non-javascript supported browsers, and
    unlikely to be indexed by search engines, would I face any other
    difficulties? For example, does an image/text swap have any browser
    dependancy issues? If I know that all my clients will have javascript
    switched on, I'm trying to figure out how much of my audience am I limiting
    by having this 'feature' (my oldest clients that visit are IE5.5 and
    Netscape 4 but these make up less than 2% of my entire visitors during the
    past ten months).

    Thanks...

    --
    A: Because it messes up the order in which people normally read text.
    Q: Why is top-posting such a bad thing?
    A: Top-posting.
    Q: What is the most annoying thing on usenet?
    Randell D., Oct 6, 2003
    #1
    1. Advertising

  2. "Randell D." <> writes:

    > Folks,
    > I'm still learning javascript - I've invested in a couple of books and
    > reading online as much as possible. I'm pretty sure what I am suggesting is
    > possible though I'm trying to weigh up the faults that might go with the
    > suggestion... all opinions welcome.
    >
    > My question: I have a list of links that go to pages that have a similar
    > layout. Could I have a text swap, similar to what I've seen with image swaps
    > (or an image switch) whereby instead of loading a seperate page, text and
    > image is just replaced?


    Yes. I am not sure it is the best solution, but it is definitly technically
    possible.

    You have to decide on some design issues first, though.

    Should all the text be loaded with the original page, or should the
    new text be loaded on-demand when you click on a link? For images, it is
    simple, they are always loaded when you need them, but text is not so
    easily changed.

    If you put the text in an iframe, you can change it by setting the src
    property. It has all the problems of frames, though, and I wouldn't
    recommend it for what you want.

    If you fetch text on-demand, you need a way to fetch data from the
    server without loading the page. Some browsers can do that with
    special features like XML-Http-Request of IE and Mozilla
    (<URL:http://jibbering.com/2002/4/httprequest.html>), but other browsers
    need more work to fetch simple text.

    If you load all the text with the original page, then switching the text
    is only a matter of changing which text block is visible. Or, you can put
    the text in Javascript and change the document content dynamically.

    > Other than not being accessable by non-javascript supported browsers, and
    > unlikely to be indexed by search engines, would I face any other
    > difficulties? For example, does an image/text swap have any browser
    > dependancy issues?


    That depends on how you do it, and which browsers you target.

    You should really decide the target browsers, and how the page should
    degrade for other browsers, before anything else. It will limit what
    approaches you can use.

    Netscape 4 couldn't change the document structure dynmanically, but it
    allowed you to change the contents of layers independently of the main
    document. Other browsers that don't allow changes to the document structure
    includes Opera 6, where your only choice is to load all the text at once
    (or use iframes).

    Text-swapping can be performed different ways:
    - IE's innerHTML/innerText properties. While innerHTML is quite widely
    implemented, it is non standard.
    - W3C's DOM. Only supported in modern browsers, not Netscape 4 or IE 4.

    > If I know that all my clients will have javascript switched on,


    How do you know?
    Some statistics claim as many as 10% of people browsing without
    Javascript.

    > I'm trying to figure out how much of my audience am I limiting by
    > having this 'feature' (my oldest clients that visit are IE5.5 and
    > Netscape 4 but these make up less than 2% of my entire visitors
    > during the past ten months).


    As always, Netscape 4 is the worst offender. Not that you can blame it,
    it was designed before the W3C DOM. You can blame people who still use
    it and expect pages to work :).

    > A: Because it messes up the order in which people normally read text.
    > Q: Why is top-posting such a bad thing?
    > A: Top-posting.
    > Q: What is the most annoying thing on usenet?


    My favorite is:
    "Usenet isn't Jeopardy. The question before the answer, please."
    :)

    /L
    --
    Lasse Reichstein Nielsen -
    Art D'HTML: <URL:http://www.infimum.dk/HTML/randomArtSplit.html>
    'Faith without judgement merely degrades the spirit divine.'
    Lasse Reichstein Nielsen, Oct 6, 2003
    #2
    1. Advertising

  3. Randell D.

    Randell D. Guest

    "Lasse Reichstein Nielsen" <> wrote in message
    news:...
    > "Randell D." <> writes:
    >
    > > Folks,
    > > I'm still learning javascript - I've invested in a couple of books and
    > > reading online as much as possible. I'm pretty sure what I am

    suggesting is
    > > possible though I'm trying to weigh up the faults that might go with the
    > > suggestion... all opinions welcome.
    > >
    > > My question: I have a list of links that go to pages that have a similar
    > > layout. Could I have a text swap, similar to what I've seen with image

    swaps
    > > (or an image switch) whereby instead of loading a seperate page, text

    and
    > > image is just replaced?

    >
    > Yes. I am not sure it is the best solution, but it is definitly

    technically
    > possible.
    >
    > You have to decide on some design issues first, though.
    >
    > Should all the text be loaded with the original page, or should the
    > new text be loaded on-demand when you click on a link? For images, it is
    > simple, they are always loaded when you need them, but text is not so
    > easily changed.
    >
    > If you put the text in an iframe, you can change it by setting the src
    > property. It has all the problems of frames, though, and I wouldn't
    > recommend it for what you want.
    >
    > If you fetch text on-demand, you need a way to fetch data from the
    > server without loading the page. Some browsers can do that with
    > special features like XML-Http-Request of IE and Mozilla
    > (<URL:http://jibbering.com/2002/4/httprequest.html>), but other browsers
    > need more work to fetch simple text.
    >
    > If you load all the text with the original page, then switching the text
    > is only a matter of changing which text block is visible. Or, you can put
    > the text in Javascript and change the document content dynamically.
    >
    > > Other than not being accessable by non-javascript supported browsers,

    and
    > > unlikely to be indexed by search engines, would I face any other
    > > difficulties? For example, does an image/text swap have any browser
    > > dependancy issues?

    >
    > That depends on how you do it, and which browsers you target.
    >
    > You should really decide the target browsers, and how the page should
    > degrade for other browsers, before anything else. It will limit what
    > approaches you can use.
    >
    > Netscape 4 couldn't change the document structure dynmanically, but it
    > allowed you to change the contents of layers independently of the main
    > document. Other browsers that don't allow changes to the document

    structure
    > includes Opera 6, where your only choice is to load all the text at once
    > (or use iframes).
    >
    > Text-swapping can be performed different ways:
    > - IE's innerHTML/innerText properties. While innerHTML is quite widely
    > implemented, it is non standard.
    > - W3C's DOM. Only supported in modern browsers, not Netscape 4 or IE 4.
    >
    > > If I know that all my clients will have javascript switched on,

    >
    > How do you know?
    > Some statistics claim as many as 10% of people browsing without
    > Javascript.
    >
    > > I'm trying to figure out how much of my audience am I limiting by
    > > having this 'feature' (my oldest clients that visit are IE5.5 and
    > > Netscape 4 but these make up less than 2% of my entire visitors
    > > during the past ten months).

    >
    > As always, Netscape 4 is the worst offender. Not that you can blame it,
    > it was designed before the W3C DOM. You can blame people who still use
    > it and expect pages to work :).
    >
    > > A: Because it messes up the order in which people normally read text.
    > > Q: Why is top-posting such a bad thing?
    > > A: Top-posting.
    > > Q: What is the most annoying thing on usenet?

    >
    > My favorite is:
    > "Usenet isn't Jeopardy. The question before the answer, please."
    > :)
    >
    > /L
    > --
    > Lasse Reichstein Nielsen -
    > Art D'HTML: <URL:http://www.infimum.dk/HTML/randomArtSplit.html>
    > 'Faith without judgement merely degrades the spirit divine.'




    I'm curious - I knew someone with a similar name from Denmark - did you ever
    work for HP?

    Thanks for the prompt and detailed reply - I know my viewers have javascript
    switched on because of a small clear.gif image that is downloaded
    automatically, using javascript as a test. I can compare this with my
    webalizer log files and things are almost the same (give or take under 2%) -
    Fine for my purposes...

    I do plan on offering a static 'non-javascript' version of my pages though
    to cover my options....

    The javascript portion includes "blurbs" - it relates to products and I
    wasn't thinking of having the full text displayed - I was thinking of arrays
    or objects (the latter I'm just begining to learn at the moment) to contain
    the product name, the manufacturer and the first ten words (max 100chars)...
    Each page refresh would change the order of the listing to give a rough
    equality "top listing" thus not showing any single preference to one
    manufacturer or product... I could have had it randomized via PHP but I
    prefer a client-side engine...

    And your Jeopardy signature - I like it and will remember it - someday it
    will prove useful to me.... my girlfriend loves that show, regretably
    because hearing the answer first really annoys me...

    thanks for the help anyway...
    Randell D., Oct 7, 2003
    #3
  4. "Randell D." <> writes:

    > I'm curious - I knew someone with a similar name from Denmark - did you ever
    > work for HP?


    Nope, sorry (I wish!). According to Krak.dk, there are 60 people in
    Denmark called "Reichstein", and one other called "Lasse Reichstein",
    but he lives in Copenhagen, while I'm from Ã…rhus :)

    > I know my viewers have javascript switched on because of a small
    > clear.gif image that is downloaded automatically, using javascript
    > as a test. I can compare this with my webalizer log files and things
    > are almost the same (give or take under 2%) - Fine for my
    > purposes...


    That is probably a fairly accurate measure. If it is only on the front
    page, it won't measure people going directly to sub pages. Still, 2%
    is a fairly high number of people to annoy ...

    > I do plan on offering a static 'non-javascript' version of my pages though
    > to cover my options....


    .... so this is a good idea.

    > The javascript portion includes "blurbs" - it relates to products and I
    > wasn't thinking of having the full text displayed - I was thinking of arrays
    > or objects (the latter I'm just begining to learn at the moment) to contain
    > the product name, the manufacturer and the first ten words (max 100chars)...
    > Each page refresh would change the order of the listing to give a rough
    > equality "top listing" thus not showing any single preference to one
    > manufacturer or product... I could have had it randomized via PHP but I
    > prefer a client-side engine...


    Random shuffling of an array is fairly easy to do.
    I don't see why you prefer clientside computation to serverside PHP.
    All other things being equal, computing on the server is safer. Nobody
    has PHP turned off :)

    The description doesn't tell me whether you only load the first 100 chars
    of the description, or load it all and only display the 100 char blurp.

    If you only have the blurp loaded, you need to fetch the rest of the text
    after the page has loaded. So, this gives you two options:
    iframes (and an ilayer for NS4)
    or
    XMLHTTPRequest for IE and Mozilla (with some other option for other
    modern browsers, and probably still an ilayer for NS4).

    The most widely usable solution is iframes. It can even work without
    Javascript in non-NS4 browsers.

    ....
    <a href="productX.html" target="description" onclick="return switchTo('X')">
    Product X is a fine thingie which is just what you want ...
    </a>
    ....
    <img id="imageToChange" src="prod1.png">
    <iframe name="description" src="product1.html">
    <ilayer name="NSdescription" src="product1.html">
    </ilayer>
    </iframe>
    ....

    For NS4, you will then change "document.layers.NSdescription.src"
    appropriately.

    > And your Jeopardy signature - I like it and will remember it


    It really isn't mine. I picked it up from somebody in a Danish
    newsgroup. :)

    > - someday it will prove useful to me.... my girlfriend loves that
    > show, regretably because hearing the answer first really annoys
    > me...


    It's definitly just a gimmick. I can't remember the last time I saw
    somebody forget to give the answer as a question.

    /L
    --
    Lasse Reichstein Nielsen -
    Art D'HTML: <URL:http://www.infimum.dk/HTML/randomArtSplit.html>
    'Faith without judgement merely degrades the spirit divine.'
    Lasse Reichstein Nielsen, Oct 7, 2003
    #4
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. hadAnet
    Replies:
    2
    Views:
    4,342
    hadAnet
    Dec 28, 2005
  2. Phillip Roncoroni
    Replies:
    6
    Views:
    6,187
  3. Niels Dekker (no reply address)

    What swap is called when using std::swap?

    Niels Dekker (no reply address), Jul 19, 2006, in forum: C++
    Replies:
    4
    Views:
    975
    Niels Dekker (no reply address)
    Jul 20, 2006
  4. Clay
    Replies:
    1
    Views:
    138
    Elegie
    Sep 28, 2006
  5. twst3d
    Replies:
    0
    Views:
    91
    twst3d
    Jul 11, 2007
Loading...

Share This Page