Export to GitHub

simplemodal - issue #7

IE8 + jQuery 1.3 + SimpleModal 1.2.2 Bug


Posted on Jan 27, 2009 by Massive Ox

See http://www.ericmmartin.com/projects/simplemodal/#comment-6175

Comment #1

Posted on Feb 28, 2009 by Quick Panda

line 64: ieQuirks = $.browser.msie && !$.boxModel, .boxModel is depreciated in jquery-1.3, and it returns undefined (if i remember correctly) !undefined = true, so this evaluates to true && true = ieQuirks.

The new method is $.support.boxModel, but it requires the document.ready, otherwise it will return null. I wasn't sure how to modify it to work appropriately.

As a quick hack, I changed the line to ieQuirks = false, So it'll still hit if it's ie6, but not 7 in quirks mode unfortunately.

hope this helps, great plugin.

~Geo

Comment #2

Posted on Mar 2, 2009 by Massive Ox

This should be fixed in 1.2.3 - let me know if you still have issues.

Comment #3

Posted on Apr 7, 2009 by Quick Elephant

Hi Eric,

I'm testing with the released version of IE8, jquery-1.3.2.min.js and jquery.simplemodal-1.2.3.js

I'm receiving the error noted here:

http://www.ericmmartin.com/projects/simplemodal/#comment-6175

on the line:

s.removeExpression('height');

My best to you and yours,

Jeffrey

Comment #4

Posted on Apr 8, 2009 by Massive Ox

Jeffrey,

Do you get the error on either of the following pages: http://www.ericmmartin.com/simplemodal-test/ http://www.ericmmartin.com/simplemodal/

If not, can you point me to a place where it does happen? Do you have any settings changed in IE8?

I had another user report that this was an issue with SimpleModal 1.2.2, but that it was resolved in 1.2.3.

Comment #5

Posted on Apr 12, 2009 by Quick Elephant

Comment deleted

Comment #6

Posted on May 15, 2009 by Grumpy Rhino

I'm getting the exact same issue at the same location - following site

yardstogardens.org/dev

the code is in the main.js file function that calls it is below

function showEditListingModal(inMode, inListing) { var tpE = {"listingModal_header":"Create a new Listing", "saveButtonText":"Submit", "id":-1}; editListing.sendMode = "new"; if(typeof(inMode) == "string" && inMode == "edit") { tpE.listingModal_header = "Edit your Listing"; tpE.saveButtonText = "Save Changes"; tpE.id = inListing.id; tpE.s_confirm = inListing.s_confirm; editListing.sendMode = "edit"; } $.modal.close(); $.modal($.snippet("edit_listing", tpE), editListingConfig); $("#listing__zip").listen( { 27:function(e, listener) { $("#listing__zip").val("");}, "regEx":/^[0-9]{0,5}-?([0-9]){0,4}$/,
"invalidAction":"swallowKey" } ); }

Comment #7

Posted on Jun 23, 2009 by Swift Wombat

I found a workaround.

I got the exact same error as described above. 'Not implemented' error in IE8. The debugger stops at the line: s.removeExpression('height');

In Firefox it works fine.

I downloaded the 3 jquery javascript files from the demo page : http://www.ericmmartin.com/simplemodal-test/ (jquery.js, simplemodal.js and simplemodal.jquery.js)

When I used these 3 files the error was gone. It now works in IE7, IE8, Firefox

The previous (non working) files are attached in a zip file. (jquery-1.3.2.min.js and jquery.simplemodal.js)

Hope this helps, W0ut

Attachments

Comment #8

Posted on Sep 1, 2009 by Quick Camel

I too receive this problem in IE8, but not if compatibility mode is turned on. I am using version 1.3.

Comment #9

Posted on Sep 16, 2009 by Happy Hippo

I'm having the same problem here. 'Not Implemented' error in IE8 on "s.removeExpression('height');" line.

Does anybody knows how to fix this?

Comment #10

Posted on Sep 16, 2009 by Grumpy Rhino

gustavobello comment 7 explains how to fix it.

Comment #11

Posted on Sep 18, 2009 by Massive Ox

gustavobello - what version of jQuery and SimpleModal are you using?

Comment #12

Posted on Oct 30, 2009 by Massive Kangaroo

Same problem here.

I think it has nothing to do with the version of jquery or SimpleModal..

In IE8 standards mode support for expressions has been removed: http://blogs.msdn.com/ie/archive/2008/10/16/ending-expressions.aspx. The check for G.style.removeExpression returns true, but the call to the method throws a "Not Implemented" error.

This may be a bug in IE8, but it's unlikely to be fixed before it is released, and I've been unable to submit a bug at the https://connect.microsoft.com/IE/Feedback site. Therefore it may be necessary to work around it.

... please let me know if there has been progress on this (expl. workaround ?)

Comment #13

Posted on Nov 1, 2009 by Swift Horse

I made changes to the script with the document ready code and it works great now.

heres the code

$(document).ready(function() { $("#sample").modal({ minHeight:200, minWidth: 450, onClose: function (dialog) { dialog.data.fadeOut('slow', function () { dialog.container.hide('slow', function () { dialog.overlay.slideUp('slow', function () { $.modal.close(); }); }); }); }}); });

Thanks for the hint from the 1st commentor, cheers!

Comment #14

Posted on Jan 12, 2010 by Grumpy Bear

Hi All,

Just to let you know that I am still encountering this issue.

I have downloaded the latest version of SimpleModal (4_jquery.simplemodal-1.3.3.js), and this did not solve the issue.

I am using jQuery version 1.3.2.

Any feedback is greatly appreciated.

Comment #15

Posted on Feb 9, 2010 by Massive Rhino

I'm getting the "Not Implemented" error when I run the vsdoc (Visual Studio documentation) version of jquery. The straight minified version works fine.

Comment #16

Posted on Jun 14, 2010 by Helpful Cat

I had the same problem. As I fetched the jquery and simplemodal scripts before the portion of code which included the call to the modal function, I've thought it wouldn't be necessary to wrap it int a "document.ready" code. But it was!

So, the solution was having $(document).ready(function() { $("#mydiv").modal(); });

Comment #17

Posted on Jul 18, 2010 by Quick Rabbit

Still a problem in 1.3.5 with jQuery 1.4.2. Issue identified in comment #1. Solution there was to set ieQuirks = false, however, that may break in earlier versions of IE.

Suggest change from: ieQuirks = $.browser.msie && !$.boxModel;

To: ieQuirks = jQuery.support.boxModel;

Tested in IE8 Standards mode, IE7 compatibility mode, Firefox 3.6.6, Opera 10.51, Google Chrome 5.0.375.99

Comment #18

Posted on Jul 20, 2010 by Massive Ox

I can't recreate the issue. Can you provide a scenario in which you get this issue? Also, make sure you aren't calling modal() until the DOM is ready.

Comment #19

Posted on Jul 26, 2010 by Quick Rabbit

You hit on my mistake. I was calling modal(), but wasn't waiting until the DOM was ready. If I had read down to comment 16 before I found my other solution, I probably would have tried that. Thanks.

Comment #20

Posted on Sep 10, 2010 by Swift Rabbit

i tried the comment 17 solution and it worked for me....

ieQuirks=$.browser.msie&&!$.support.boxModel to ieQuirks = jQuery.support.boxModel;

Comment #21

Posted on Sep 15, 2010 by Happy Cat

I had these problems on IE8/compatability mode OFF, and only when dealing with a very slow web server. In this scenario, I could just watch IE downloading the images ("25 images remaining...").

For me, changing $(document).ready to ${window).load did the trick.

Comment #22

Posted on Jan 20, 2011 by Happy Cat

This is still an issue in 1.4.1

in: IE8.0.7600.16385 in normal (with Compatibility mode ON it works fine)

with: jquery 1.4.4

Comment #23

Posted on May 20, 2011 by Grumpy Rhino

i don't know if this is related, but i have some major width issues with 1.4.1 and ie 9 quirks mode (not compatibility mode), it breaks - the container width is always 100%. i've tried with jquery 1.4.2 and 1.6.1 - same issue. however, version 1.3 of simplemodal works fine with either jquery version (in ie9 quirks mode) whereas 1.4.1 breaks.

Comment #24

Posted on May 20, 2011 by Swift Kangaroo

I am having the same issue.I am using: - jquery.simplemodal-1.4.1.js - jquery-1.6.1.min.js

I am not calling modal() until the user selects a state from a dropdown list. So the DOM is completely loaded by then.

I pulled the page off our production server and put it on my personal site so others could look at the issue.

http://meysenburg.com/MDU/index.html

Comment #25

Posted on Jul 13, 2011 by Massive Kangaroo

It looks like it is also solved for IE8 with the new 1.4.1 version.

Altough the changelog only mentions "Resolved the container height issue in IE6 & IE7 with jQuery 1.4.3"

Anybody else where it is solved with 1.4.1 version? (I'm using jQuery 1.6.1 + SimpleModal 1.4.1)

Comment #26

Posted on Sep 6, 2011 by Grumpy Camel

Comment deleted

Comment #27

Posted on Sep 7, 2011 by Grumpy Camel

I'm seeing this issue using jquery.simplemodal-1.4.1.js and jQuery 1.6.1 using iframes in IE8 (actually IE9 emulating IE9). In stepping through the jQuery, I see that in my main frame support.boxModel is set to true and in the iframes it's (incorrectly) set to false. It seems like support.boxModel is cannot be relied on and simplemodal needs to find a better way to do this test.

I worked around it by setting my iframe's src in my main frame's $(document).ready().

Comment #28

Posted on Feb 7, 2012 by Swift Monkey

how to access textbox value on server side which is in simplemodal

Comment #29

Posted on Feb 7, 2012 by Swift Monkey

forms control used in simplemodal not accessed on server side, please solve this issue asap

thank in advance

Comment #30

Posted on Feb 15, 2012 by Swift Monkey

how to access textbox value on server side which is in simplemodal. forms control used in simplemodal not accessed on server side

Comment #31

Posted on Feb 15, 2012 by Grumpy Camel

javedsm2, your question has nothing to do with this issue, which is "IE8 + jQuery 1.3 + SimpleModal 1.2.2 Bug". It sounds like your question has nothing to do with simplemodal at all, and you need to get a better understanding of the basics of web development. The simplemodal issue tracker is not an appropriate place for that. I would recommend reading some books on the subject.

Comment #32

Posted on Apr 7, 2012 by Swift Monkey

mhenry1, may be this question is not regarding to this bug but normally when i use another popup control then on server side i directly access value of textbox but in simpalmodal it always give me blank value.if you have any solution on this please give me.

Comment #33

Posted on Aug 21, 2012 by Quick Dog

jquery 1.8.0 and simplemodal 1.4.2 IE9 im getting error Object doestn support property or method 'removeExpression'

it works fine in chrome

Comment #34

Posted on Aug 27, 2012 by Swift Cat

Comment deleted

Comment #35

Posted on Aug 27, 2012 by Swift Cat

jquery 1.8 and simplemodel 1.4.2 on IE8

I am experiencing this same issue.

As the original comment mentions, this seems to be due to ieQuirks being true. When I change the line defining ieQuirks to be

ieQuirks = $.browser.msie && !$.support.boxModel

the problem goes away.

Comment #36

Posted on Aug 30, 2012 by Massive Cat

I can confirm that the fix mentioned earlier,

ieQuirks = $.browser.msie && !$.support.boxModel

does indeed fix the problem.

Confirmed working with IE8, IE9, FF and Chrome.

Comment #37

Posted on Sep 17, 2012 by Swift Rabbit

+1 Thank you for the help from everyone. If you are using jquery.simplemodal.1.4.2.min.js as I am, then you'll need to search for the line below (row 10 col 202 for me):

m=b.browser.msie&&!b.boxModel;

--> change to -->

m=b.browser.msie&&!b.support.boxModel;

Not a big jump to figure that out but thought I'd share.

Comment #38

Posted on Dec 13, 2013 by Massive Rhino

i had a similar issue but wasn't fixed by the above - however the fix at https://code.google.com/p/simplemodal/issues/detail?id=88 worked for me - commenting out the contents of the fixIE function.

Comment #39

Posted on Dec 18, 2013 by Swift Monkey

better again,

ieQuirks = browser.msie && !$.support.boxModel

work fine without using jquery removed $.browser ;)

Status: Fixed

Labels:
Type-Defect Priority-Medium