use a behavior that adds an onDocumentLoad/Ready script to the browser On Thu, May 15, 2008 at 12:35 PM, Eyal Golan <[EMAIL PROTECTED]> wrote:
> Hello, > I have a MyButton that extends Button. > I have a JavaScript that I need to ad to the output markup after the > button's markup. > I'm trying to do this with two differnet options: > Either I Override onAfterRender in MyButton: > @Override > protected void onAfterRender() { > if (isVisible()) { > getResponse().write(Consts.getResizeScript(getMarkupId())); > } > super.onAfterRender(); > } > > Or, I add to the button a behavior and write this: > @Override > public void onRendered(Component component) { > if (component.isVisible()) { > > > component.getResponse().write(Consts.getResizeScript(component.getMarkupId())); > } > > } > > Now, the situation is like this: > Using the first option (override in the component), the script is added to > the end of the html. Just after the </html> > Using the second option (the behavior), the script is added just after the > close tag of the button </button>. > > Using FF, all is ok, but in IE7, there's a problem in calculating the size > and the button is not shown correctly. > > What causes the differences? and how can I manipulate the behavior to work > like option 1 ? > > Thanks very much... > > -- > Eyal Golan > [EMAIL PROTECTED] > > Visit: http://jvdrums.sourceforge.net/ >