Andrew said:
Thanks for your responses - problem is - even if I make
the link something like this there is still a problem:
<script type="text/javascript">
function righthide() {
// intentionally left blank
}
function voidfn() { ; }
</script>
...
<body>
...
<div id="right">
<a href="javascript:voidfn();" onclick="righthide();">hide</a>
</div>
...
</body>
...
as you can understand this VERY weird.
If scrollbars appear when you activate the link you would imagine that
the page has become larger, maybe because some of its contents become
larger. This is the sort of question that is best resolved with a
minimal test case that shows the complete code. You have not provided
enough for anyone else to reproduce, or examine, the behaviour, so you
may never get to fully understand what is happening.
However, if the effect is observed when all the functions called do
nothing it cannot be the action of your code that causes the symptoms.
There are two possible state changes that may follow from clicking on a
link. The first is that the link will go from its normal (or 'hover')
state to an 'active' state, which is often styled differently, and so
may be a larger size. This is unlikely, as browser's default style
sheets do not tend to change the style of links in a way that would
result in them being larger when 'active'.
The other state change follows from the act of executing a javascript
pseudo-protocol HREF. It appears that many browsers respond to the use
of a javascript pseudo-protocol HREF in the same way as they respond to
navigation, putting the browser into a 'waiting' state in anticipation
of the contents of the page being replaced in the near future. Of course
when a javascript pseudo-protocol does not result in the replacement of
the current page this new state is not terminated by the arrival of a
replacement page.
This waiting state has numerous diverse symptoms across different
browsers. The most demonstrable one being on Windows IE, where animated
GIF images stop animating at the point of activation of a javascript
pseudo-protocol. But much other unexpected behaviour has been identified
as following from the execution of javascript pseudo-protocol HREF.
However, to date I have never seen the appearance of scrollbars being
attributed to this cause. But that is not necessarily significant as an
awareness of this state change, and other issues with the use of the
pseudo-protocol in HREFs that do not result in the replacement of the
current page, results in the standard advice being to never use a
javascript pseudo-protocol HREF, and avoiding their use entirely acts
against being able to become familiar with the full spectrum of
symptoms.
It remains the sort of question that can only be finally resolved with a
complete, minimal test-case page, and details of which environment(s)
exhibit the symptoms.
Any more advice appreciated!
There are long established conventions in the construction and
formatting of newsgroup posts. They are outlined in this group's FAQ,
and disregarding them will result in your posts being disregarded, and
particularly by a significant proportion of the contributors to this
group who are capable of providing the best informed advice. You would
be well advised to become familiar with those conventions, and use them
when posting to the group.
Richard.