Bug#660035: dynamic <marquee> fails to scroll in iceweasel
eclectic 923
eclectic923 at yahoo.com
Wed Feb 15 22:04:15 UTC 2012
Package: iceweasel
Version: 3.5.16-11
I'm working on developing web pages using Debian Squeeze. I was using
the <marquee> element when I discovered it didn't scroll.
I did some digging.
1) The <marquee> element needs to be dynamically created to stop it from
scrolling. If the <marquee> element is present when the page loads
it works just fine. So, my page has an empty <div> that I put the
<marquee> element in using javascript (jquery). Basically, the <div>
is a place for help information, that dynamically changes. Sometimes
it holds a two line paragraph.
2) The javascript code that fails for iceweasel works in chromium-browser,
epiphany, konqueror, and WinXP/IE8 just fine (all but IE8 from Debian
Squeeze).
3) The iceweasel/firefox <marquee> can be persuaded to work by calling
the DOM object's .init() function. (A marquee has start() and stop()
functions, and an init() function. The start()/stop() functions are
often tied to mouseover events so that the mouse can be used to pause
the marquee. I assume the init() function should be called by the
browser once the <marquee> element is part of the DOM... but apparently
isn't in iceweasel.)
So, using in a jquery callback function that is tripped when the
<marquee> element is added to the DOM, proper operation is restored by:
try {
dom_obj = $(this)[0]; // equiv to document.getElementById('foo')
dom_obj.init();
}
catch(err) {;} // do nothing
4) I took a look at the Mozilla buglist. The closest reference I could
find is 479467 which contains a discussion on a different issue but
does mention having problems with scrolling of <marquee> elements.
The Mozilla bug also suggests that this issue is fixed in later versions
of mozilla/firefox.
5) You may also want to know that I'm using xulrunner-1.9.1.16-11.
More information about the pkg-mozilla-maintainers
mailing list