![]() | |
![]() |
| | Thread Tools | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
|
, Wed, 4 Nov 2009 00:00:02, FAQ server <javascript (AT) dotinternet (DOT) be posted: ----------------------------------------------------------------------- FAQ Topic - I have window.status="Moomin"; why doesn't the statusbar change? ----------------------------------------------------------------------- When changing the status in an event (e.g. ` onmouseover `) you should return true from the event. Also a number of browsers require a short delay before setting the status to overcome their default behaviour with the statusbar. ` onevent="setTimeout('window.status=\'Moomin\'',15) ;" ` Most browsers are configured, by default, to disallow scripts from setting the status bar text. |
#3
| ||||
| ||||
|
|
In comp.lang.javascript message <4af0c409$0$278$14726298 (AT) news (DOT) sunsite.dk , Wed, 4 Nov 2009 00:00:02, FAQ server <javascript (AT) dotinternet (DOT) be posted: ----------------------------------------------------------------------- FAQ Topic - I have window.status="Moomin"; why doesn't the statusbar change? ----------------------------------------------------------------------- |
|
When changing the status in an event (e.g. ` onmouseover `) you should return true from the event. Also a number of browsers require a short delay before setting the status to overcome their default behaviour with the statusbar. ` onevent="setTimeout('window.status=\'Moomin\'',15) ;" ` Most browsers are configured, by default, to disallow scripts from setting the status bar text. AFAICS, IE allows, FF does not, Opera allows ; Safari & Chrome don't have a bar. But I may have changed settings from default. Mobile devices will probably be mostly status-bar free. |
|
The current answer only refers to after an event. It does so because if called in an onmouseover, the status bar change |
|
changed without any event, both my IE & my Opera show it changing on running the page script J=88888 while(J--) window.status=J /script IE appears to show every number; Opera to show samples. Assume a page which calculates solidly for a whole two seconds, in the middle of which it calls the FAQ's setTimeout('window.status=\'Moomin\'', 15); Will that delay usually or always help? Should the delay be started only when other action is about to stop, or at the start of a forced pause? Don't calculate for two seconds. |
#4
| ||||||||
| ||||||||
|
|
Dr J R Stockton wrote: In comp.lang.javascript message <4af0c409$0$278$14726298 (AT) news (DOT) sunsite.dk , Wed, 4 Nov 2009 00:00:02, FAQ server <javascript (AT) dotinternet (DOT) be posted: ----------------------------------------------------------------------- FAQ Topic - I have window.status="Moomin"; why doesn't the statusbar change? ----------------------------------------------------------------------- There is no good reason for doing this. |
|
Can we remove this one? This is like an old, bad NS4 trick. Doesn't get asked and no sense encouraging it. If a status bar change is triggered by the user interacting with something, it (the status bar) is usually very far from the actual thing that the user is interacting with. |
|
A better user experience (U/X) is to provide status notification on the page (title, tooltip, changing text). |
|
When changing the status in an event (e.g. ` onmouseover `) you should return true from the event. Also a number of browsers require a short delay before setting the status to overcome their default behaviour with the statusbar. ` onevent="setTimeout('window.status=\'Moomin\'',15) ;" ` Most browsers are configured, by default, to disallow scripts from setting the status bar text. AFAICS, IE allows, FF does not, Opera allows ; Safari & Chrome don't have a bar. But I may have changed settings from default. Mobile devices will probably be mostly status-bar free. |
|
The current answer only refers to after an event. It does so because if called in an onmouseover, the status bar change interferes with something the default action (behaviour). |
|
But the bar can be changed without any event, both my IE & my Opera show it changing on running the page script J=88888 while(J--) window.status=J /script IE appears to show every number; Opera to show samples. |
|
Assume a page which calculates solidly for a whole two seconds, in the middle of which it calls the FAQ's setTimeout('window.status=\'Moomin\'', 15); Will that delay usually or always help? Should the delay be started only when other action is about to stop, or at the start of a forced pause? Don't calculate for two seconds. |
|
Break the calculation into chunks. Use setTimeout to execute each chunk until done. Display update notifications on the page, not in the status bar. |
#5
| |||
| |||
|
|
Dr J R Stockton wrote: FAQ server posted: ----------------------------------------------------------------------- FAQ Topic - I have window.status="Moomin"; why doesn't the statusbar change? ----------------------------------------------------------------------- There is no good reason for doing this. |
|
Can we remove this one? |
#6
| ||||||||
| ||||||||
|
|
In comp.lang.javascript message <hcu27a$p7i$1 (AT) news (DOT) eternal- september.org>, Thu, 5 Nov 2009 00:26:13, Garrett Smith dhtmlkitchen (AT) gmail (DOT) com> posted: Dr J R Stockton wrote: In comp.lang.javascript message <4af0c409$0$278$14726298 (AT) news (DOT) sunsite.dk , Wed, 4 Nov 2009 00:00:02, FAQ server <javascript (AT) dotinternet (DOT) be posted: ----------------------------------------------------------------------- FAQ Topic - I have window.status="Moomin"; why doesn't the statusbar change? ----------------------------------------------------------------------- There is no good reason for doing this. Your experience is limited. Those with different experience can think of reasons that you apparently cannot envisage. |
|
Can we remove this one? This is like an old, bad NS4 trick. Doesn't get asked and no sense encouraging it. If a status bar change is triggered by the user interacting with something, it (the status bar) is usually very far from the actual thing that the user is interacting with. That is not the only way in which the bar can be changed. It can be used as a continuous progress indicator, for example. And remember that utility does not reside only in a finished, published Web page; progress code can usefully be included during design-and-test time and perhaps removed from the published version. It can be a positive advantage that the status is being shown on a bar at the foot; of late I have frequently had Opera doing a full scan with URL:http://www.merlyn.demon.co.uk/linxchek>, taking about a minute, with its progress/status bar peeping out from some completely different task (like loading <http://www.bbc.co.uk/iplayer/episode/b00nky5d/Breakf ast_Thursday_Sara_MohrPietsch/>). Status can matter and change even when the page is not being (as far as it knows) interacted with. A better user experience (U/X) is to provide status notification on the page (title, tooltip, changing text). No; not "better"; merely "sometimes better" or "often better". |
|
When changing the status in an event (e.g. ` onmouseover `) you should return true from the event. Also a number of browsers require a short delay before setting the status to overcome their default behaviour with the statusbar. ` onevent="setTimeout('window.status=\'Moomin\'',15) ;" ` Most browsers are configured, by default, to disallow scripts from setting the status bar text. AFAICS, IE allows, FF does not, Opera allows ; Safari & Chrome don't have a bar. But I may have changed settings from default. Mobile devices will probably be mostly status-bar free. Certainly one cannot always assume that an end-user of a page will see a status bar. |
|
But an author/tester using a PC can be sure of having a status bar, by choosing the browser that he is using to work on the internals of a page. The bar is an available resource. |
|
The current answer only refers to after an event. It does so because if called in an onmouseover, the status bar change interferes with something the default action (behaviour). Then it should be rewritten to remove the implication that the bar may need special treatment for any event, as well as to indicate that it can be used apart from events. |
|
But the bar can be changed without any event, both my IE & my Opera show it changing on running the page script J=88888 while(J--) window.status=J /script IE appears to show every number; Opera to show samples. Assume a page which calculates solidly for a whole two seconds, in the middle of which it calls the FAQ's setTimeout('window.status=\'Moomin\'', 15); Will that delay usually or always help? Should the delay be started only when other action is about to stop, or at the start of a forced pause? Don't calculate for two seconds. Unimportant : that was a gedankenexperiment, intended to elucidate the underlying situation as you see it. |
|
Break the calculation into chunks. Use setTimeout to execute each chunk until done. Display update notifications on the page, not in the status bar. That may be superfluous. I have often calculated for minutes, sometimes hours. In a modern fast system. other processes remain sufficiently responsive; there can be no need to pause the main job just to show that it is still running and how well. |
| Please arrange that paragraph-separating lines are retained, or replaced, when you quote consecutive paragraphs. I do not understand what this means. |
#7
| |||
| |||
|
|
Dr J R Stockton wrote: In comp.lang.javascript message <hcu27a$p7i$1 (AT) news (DOT) eternal- september.org>, Thu, 5 Nov 2009 00:26:13, Garrett Smith dhtmlkitchen (AT) gmail (DOT) com> posted: Where present, the status bar is often ignored by the user. |
#8
| ||||||||
| ||||||||
|
|
Dr J R Stockton wrote: In comp.lang.javascript message <hcu27a$p7i$1 (AT) news (DOT) eternal- september.org>, Thu, 5 Nov 2009 00:26:13, Garrett Smith dhtmlkitchen (AT) gmail (DOT) com> posted: Dr J R Stockton wrote: In comp.lang.javascript message <4af0c409$0$278$14726298 (AT) news (DOT) sunsite.dk , Wed, 4 Nov 2009 00:00:02, FAQ server <javascript (AT) dotinternet (DOT) be posted: ----------------------------------------------------------------------- FAQ Topic - I have window.status="Moomin"; why doesn't the statusbar change? ----------------------------------------------------------------------- There is no good reason for doing this. Your experience is limited. Those with different experience can think of reasons that you apparently cannot envisage. Great. So fix that. Please demonstrate to us the practical utility of window.status. |
|
A better user experience (U/X) is to provide status notification on the page (title, tooltip, changing text). No; not "better"; merely "sometimes better" or "often better". You're an expert in HCI? |
|
When changing the status in an event (e.g. ` onmouseover `) you should return true from the event. Also a number of browsers require a short delay before setting the status to overcome their default behaviour with the statusbar. ` onevent="setTimeout('window.status=\'Moomin\'',15) ;" ` Most browsers are configured, by default, to disallow scripts from setting the status bar text. AFAICS, IE allows, FF does not, Opera allows ; Safari & Chrome don't have a bar. But I may have changed settings from default. Mobile devices will probably be mostly status-bar free. Certainly one cannot always assume that an end-user of a page will see a status bar. Where present, the status bar is often ignored by the user. |
|
But an author/tester using a PC can be sure of having a status bar, by choosing the browser that he is using to work on the internals of a page. The bar is an available resource. The FAQ covers debugging tools, such as Firebug, IE developer toolbar, Dragonfly (use opera.postError). |
|
For environments where a debugging tool or console is unavailable, debug info may be shown as text in an element (e.g. TEXTAREA, PRE). |
|
The current answer only refers to after an event. It does so because if called in an onmouseover, the status bar change interferes with something the default action (behaviour). Then it should be rewritten to remove the implication that the bar may need special treatment for any event, as well as to indicate that it can be used apart from events. It could be. Should it? Doesn't seem to be frequently asked. |
|
But the bar can be changed without any event, both my IE & my Opera show it changing on running the page script J=88888 while(J--) window.status=J /script IE appears to show every number; Opera to show samples. Assume a page which calculates solidly for a whole two seconds, in the middle of which it calls the FAQ's setTimeout('window.status=\'Moomin\'', 15); Will that delay usually or always help? Should the delay be started only when other action is about to stop, or at the start of a forced pause? Don't calculate for two seconds. Unimportant : that was a gedankenexperiment, intended to elucidate the underlying situation as you see it. What is this? Is it some sort of game? It took me a bit of time last night and think about the answer to your (apparently fake) problem. |
|
Break the calculation into chunks. Use setTimeout to execute each chunk until done. Display update notifications on the page, not in the status bar. That may be superfluous. I have often calculated for minutes, sometimes hours. In a modern fast system. other processes remain sufficiently responsive; there can be no need to pause the main job just to show that it is still running and how well. In a browser, halting and freezing for 2s is bad usability. |
#9
| |||||||||
| |||||||||
|
|
In comp.lang.javascript message <hd08pq$r54$1 (AT) news (DOT) eternal- september.org>, Thu, 5 Nov 2009 20:30:46, Garrett Smith dhtmlkitchen (AT) gmail (DOT) com> posted: Dr J R Stockton wrote: In comp.lang.javascript message <hcu27a$p7i$1 (AT) news (DOT) eternal- september.org>, Thu, 5 Nov 2009 00:26:13, Garrett Smith dhtmlkitchen (AT) gmail (DOT) com> posted: Dr J R Stockton wrote: In comp.lang.javascript message <4af0c409$0$278$14726298 (AT) news (DOT) sunsite.dk , Wed, 4 Nov 2009 00:00:02, FAQ server <javascript (AT) dotinternet (DOT) be posted: ----------------------------------------------------------------------- FAQ Topic - I have window.status="Moomin"; why doesn't the statusbar change? ----------------------------------------------------------------------- There is no good reason for doing this. Your experience is limited. Those with different experience can think of reasons that you apparently cannot envisage. Great. So fix that. Please demonstrate to us the practical utility of window.status. *Run* <URL:http://www.merlyn.demon.co.uk/linxchek.htm>, using a not- very-fast browser on a not-very-fast machine, on a copy of a Web site consisting of at least 100 pages redolent with links and anchors; and do it at a time when you have something else useful to do on the machine while eagerly awaiting the answer. Or believe one whose experience extends where yours manifestly does not. I loaded a page that looks like any other of your web pages. Long. |
|
Where present, the status bar is often ignored by the user. Not the point. You have above "Most browsers are configured, by default, to disallow scripts from setting the status bar text." Safari & Chrome have no bar; IE & FF allow setting; only FF disallows. That's not most, or even many. |
|
And the status bar will not be ignored if the user knows that it will be useful not to ignore it; and that, where applicable, is easily arranged. Especially when the user is the author. Consider : var bananas = true, J = 1e5, Status // ... while (--J>0) { Status = J if (bananas) bananas = confirm("Status is " + Status + "\nKeep interrupting me, rather than using the Status Bar?") else window.status = Status // lots more code } |
|
But an author/tester using a PC can be sure of having a status bar, by choosing the browser that he is using to work on the internals of a page. The bar is an available resource. The FAQ covers debugging tools, such as Firebug, IE developer toolbar, Dragonfly (use opera.postError). It does. But debugging tools are not a good way of providing a progress indicator to an end user. |
|
For environments where a debugging tool or console is unavailable, debug info may be shown as text in an element (e.g. TEXTAREA, PRE). It can. But that's more effort, and occupies space within the window; the status bar is already there and on the edge, which, as I have explained before, can be useful. |
|
"Some browsers need a short delay before setting the status to overcome their default behaviour with the statusbar. Also, when changing the status in an event (e.g. onmouseover) you should return true from the event." I have not checked whether that advice about events is accurate. It would be good to put the test code for all assertions in a parallel, linked, document. |
|
What is this? Is it some sort of game? It took me a bit of time last night and think about the answer to your (apparently fake) problem. You were wrong in thinking that it was a problem. It was an illustration. Typically, of course, the loop would include some other use of variable J. |
|
Break the calculation into chunks. Use setTimeout to execute each chunk until done. Display update notifications on the page, not in the status bar. That may be superfluous. I have often calculated for minutes, sometimes hours. In a modern fast system. other processes remain sufficiently responsive; there can be no need to pause the main job just to show that it is still running and how well. In a browser, halting and freezing for 2s is bad usability. That depends on the application. In technical work, as opposed to sales, one commonly wants the task to run to completion without waste of time. On a modern OS, that does not prevent other applications, especially those needing only slower machines, from being responsive. And, of course, if the status bar is showing change, the viewer knows that the application is not frozen. |
|
Don't regurgitate what is taught in the lower-class institutions; consider it to be less likely to be sound than TL thinks DG is. I could care less which schools you attended. |
#10
| |||||||||
| |||||||||
|
|
Dr J R Stockton wrote: In comp.lang.javascript message <hd08pq$r54$1 (AT) news (DOT) eternal- september.org>, Thu, 5 Nov 2009 20:30:46, Garrett Smith dhtmlkitchen (AT) gmail (DOT) com> posted: Dr J R Stockton wrote: In comp.lang.javascript message <hcu27a$p7i$1 (AT) news (DOT) eternal- september.org>, Thu, 5 Nov 2009 00:26:13, Garrett Smith dhtmlkitchen (AT) gmail (DOT) com> posted: Dr J R Stockton wrote: In comp.lang.javascript message <4af0c409$0$278$14726298 (AT) news (DOT) sunsite.dk , Wed, 4 Nov 2009 00:00:02, FAQ server <javascript (AT) dotinternet (DOT) be posted: ----------------------------------------------------------------------- FAQ Topic - I have window.status="Moomin"; why doesn't the statusbar change? ----------------------------------------------------------------------- There is no good reason for doing this. Your experience is limited. Those with different experience can think of reasons that you apparently cannot envisage. Great. So fix that. Please demonstrate to us the practical utility of window.status. *Run* <URL:http://www.merlyn.demon.co.uk/linxchek.htm>, using a not- very-fast browser on a not-very-fast machine, on a copy of a Web site consisting of at least 100 pages redolent with links and anchors; and do it at a time when you have something else useful to do on the machine while eagerly awaiting the answer. Or believe one whose experience extends where yours manifestly does not. I loaded a page that looks like any other of your web pages. Long. Yellow background, a lot of text, boxes with buttons. There is a section Heading with the word "Operation" That section has no text. |
|
Now I see: NOT WORKABLE FROM WEB. I am not interested in figuring out whatever it is you want me to download. Can you provide a simple example on-line? |
|
[...] Where present, the status bar is often ignored by the user. Not the point. You have above "Most browsers are configured, by default, to disallow scripts from setting the status bar text." Safari & Chrome have no bar; IE & FF allow setting; only FF disallows. That's not most, or even many. Removing the entry would fix that. |
|
And the status bar will not be ignored if the user knows that it will be useful not to ignore it; and that, where applicable, is easily arranged. Especially when the user is the author. Consider : var bananas = true, J = 1e5, Status // ... while (--J>0) { Status = J if (bananas) bananas = confirm("Status is " + Status + "\nKeep interrupting me, rather than using the Status Bar?") else window.status = Status // lots more code } Modifying the status is not as obnoxious as setting 100000 prompts. That example substitues a bad U/X for a worse one. |
|
But an author/tester using a PC can be sure of having a status bar, by choosing the browser that he is using to work on the internals of a page. The bar is an available resource. The FAQ covers debugging tools, such as Firebug, IE developer toolbar, Dragonfly (use opera.postError). It does. But debugging tools are not a good way of providing a progress indicator to an end user. The end user? You were arguing for "an author/tester using a PC". |
|
For environments where a debugging tool or console is unavailable, debug info may be shown as text in an element (e.g. TEXTAREA, PRE). It can. But that's more effort, and occupies space within the window; the status bar is already there and on the edge, which, as I have explained before, can be useful. That works in a few browsers. |
|
[...] "Some browsers need a short delay before setting the status to overcome their default behaviour with the statusbar. Also, when changing the status in an event (e.g. onmouseover) you should return true from the event." I have not checked whether that advice about events is accurate. It would be good to put the test code for all assertions in a parallel, linked, document. Great idea. Functional examples are really helpful for learning and are examples of how to write an example. [...] What is this? Is it some sort of game? It took me a bit of time last night and think about the answer to your (apparently fake) problem. You were wrong in thinking that it was a problem. It was an illustration. Typically, of course, the loop would include some other use of variable J. I see. Break the calculation into chunks. Use setTimeout to execute each chunk until done. Display update notifications on the page, not in the status bar. That may be superfluous. I have often calculated for minutes, sometimes hours. In a modern fast system. other processes remain sufficiently responsive; there can be no need to pause the main job just to show that it is still running and how well. In a browser, halting and freezing for 2s is bad usability. That depends on the application. In technical work, as opposed to sales, one commonly wants the task to run to completion without waste of time. On a modern OS, that does not prevent other applications, especially those needing only slower machines, from being responsive. And, of course, if the status bar is showing change, the viewer knows that the application is not frozen. No, that is not true. The user doees not see the status bar in many cases, and so when the browser is frozen in 10k iterations, it's end-task or force quit. |
|
Don't regurgitate what is taught in the lower-class institutions; consider it to be less likely to be sound than TL thinks DG is. I could care less which schools you attended. |
|
The entry will be removed. |
![]() |
| Thread Tools | |
| Display Modes | |
| |