window.open and settimeout

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • John

    window.open and settimeout

    Michael Winter <M.Winter@bluey onder.co.invali d> wrote in message news:<opr3wd8yv j5vklcq@news-text.blueyonder .co.uk>...[color=blue]
    > On 24 Feb 2004 14:13:47 -0800, John <johnmark@faste rmail.com> wrote:
    >[color=green]
    > > I would like to use setTimeout and window.open methods to pop up
    > > window every 5 minutes. I can only manage to make the window to pop up
    > > only twice.
    > >
    > > function openWindow() {
    > > window.open("po pupwindow.htm", "OpenedWind ow",
    > > "width=320,heig ht=240, scrollbars=yes, resizable=yes,s tatus=yes");
    > >
    > > }
    > > function settime() {
    > > setTimeout("ope nWindow()", 300 * 1000);
    > > }
    > >
    > > So what is the problem that is making the window never to come back
    > > when the user closes the popped window the second time?[/color]
    >
    > The solution is simple, but first, I would like to know why you would want
    > to do something like this. It sounds remarkably like pop-up banner
    > behaviour.
    >
    > Of course, I don't really care personally: Opera (my browser) blocks that
    > kind of pop-up. However, I would be concerned for other users, and I won't
    > endorse something so disruptive.
    >
    > Mike[/color]


    This is a friendly popup window that reminds a retailer that he has
    not taken care of the orders that has come to his site. He has an
    option for disabling the window and also if he takes care of the
    orders the window will not pop up.

    John
  • Michael Winter

    #2
    Re: window.open and settimeout

    On 25 Feb 2004 05:33:36 -0800, John <johnmark@faste rmail.com> wrote:
    [color=blue]
    > Michael Winter <M.Winter@bluey onder.co.invali d> wrote in message
    > news:<opr3wd8yv j5vklcq@news-text.blueyonder .co.uk>...
    >[color=green]
    >> On 24 Feb 2004 14:13:47 -0800, John <johnmark@faste rmail.com> wrote:
    >>[color=darkred]
    >>> I would like to use setTimeout and window.open methods to pop up
    >>> window every 5 minutes. I can only manage to make the window to pop up
    >>> only twice.
    >>>
    >>> function openWindow() {
    >>> window.open("po pupwindow.htm", "OpenedWind ow",
    >>> "width=320,heig ht=240, scrollbars=yes, resizable=yes,s tatus=yes");
    >>>
    >>> }
    >>> function settime() {
    >>> setTimeout("ope nWindow()", 300 * 1000);
    >>> }[/color][/color][/color]

    [snip]
    [color=blue][color=green]
    >> The solution is simple, but first, I would like to know why you would
    >> want to do something like this. It sounds remarkably like pop-up
    >> banner behaviour.[/color][/color]

    [snip]
    [color=blue]
    > This is a friendly popup window that reminds a retailer that he has
    > not taken care of the orders that has come to his site. He has an
    > option for disabling the window and also if he takes care of the
    > orders the window will not pop up.[/color]

    OK. That seems reasonable.

    Instead of your setTimeout() call, use setInterval():

    timerID = setInterval( openWindow, 300000 );

    Where timerID is a global variable. You will need to use that with
    clearInterval() when you want to stop the function, openWindow, from being
    called - when the retailer disables display of the window, or when there
    is nothing to remind him about, for example.

    The difference between setInterval and setTimeout is that setTimeout fires
    only once, whereas setInterval fires continuously (once every 5 minutes,
    above) until it is cancelled with clearInterval.

    Good luck,
    Mike

    --
    Michael Winter
    M.Winter@blueyo nder.co.invalid (replace ".invalid" with ".uk" to reply)

    Comment

    Working...