Lance
Lance

Reputation: 63

jquery set div width fails in IE7

I have the following code and it works correctly in FF and IE8 but fails in IE 7 anyone have an idea or hack

    if ($("#midRight:contains('Quick Links')").length == 0) {
  $("#midCenter").css({'width':'298px'});
 }

html is basic

    <div id="midRight">
bunch of text
</div>

the starting css is

#midRight {width:440px;}

IE7's javascript error is "Object doesn't support this property or method. BTW if I throw an alert in BEFORE the width change it works fine. If I move the alert to after the width change it never fires so at least I know that the conditional statement works right in IE7 just not the change of width.

Upvotes: 1

Views: 5302

Answers (3)

Greg
Greg

Reputation: 321638

Are you waiting for the DOM to finish loading? Try this:

$(function()
{
    if ($("#midRight:contains('Quick Links')").length == 0)
      $("#midCenter").css({'width': 298});
});

Upvotes: 0

Jack M.
Jack M.

Reputation: 32070

This may be a bug in the way IE7 handles setting the width with CSS. Does it work any better if you set the width directly?

if ($("#midRight:contains('Quick Links')").length == 0) {
    $("#midCenter").width(298);
}

Upvotes: 0

Funky Dude
Funky Dude

Reputation: 3967

$("#midCenter").css({width:298});

Upvotes: 5

Related Questions