Hi, more comments below.
On Fri, Oct 19, 2012 at 3:37 AM, Laurent Malvert <lmalv...@idbs.com> wrote: > from: aroma-affymetrix@googlegroups.com > [mailto:aroma-affymetrix@googlegroups.com] On Behalf Of Henrik Bengtsson >> On Thu, Oct 18, 2012 at 5:50 AM, Laurent Malvert <lmalv...@idbs.com> wrote: >>> [...] >>> I understand you have been in contact with Jay over the integration >>> of ArrayExplorer within our products, since the last time I wrote to you. >>> He reported to me some issues with IE9, though you had informed him >>> that the latest version (3.4.0, from what we gather) should work on most >>> recent browsers. >>> [...] >>> 1) ScrollBar2d.js:45: >>> 45: this.marker.style.border = 'solid; black; 2px'; // invalid syntax -> >>> Invalid Argument error >> >> Thanks for spotting this one. Corrected in next release. > > Great. Thanks for the quick response. > >>> [...] >>> 2) ArrayExplorer.js:325-328: >>> 325: var y = findXY(this.image2d.image).y; >>> 326: var dh = document.body.clientHeight; >>> 327: var h = (dh - y - 12) + 'px'; >>> 328: this.image2d.container.style.height = h; // got -1 -> Invalid >>> Argument error >>> >>> [...] >>> I assume the problem is in the use of document/body.clientHeight, which >>> may not be the best approach for all embedding scenarios. >> >> Not sure if it is better or not, but at least until one understand this >> better, one could >> throw an alert() error message if invalid values are detected; that would >> bring up >> the problem to the surface (and hopefully people report rather than get >> annoyed). > > A console.log() might be less intrusive and enough if you support only modern > browsers. > The downside is that it won't be as noticeable, but more advanced users would > surely check the logs to see why things don't work and see your message. Makes sense; using console.log() instead. > >>> >>> 3) ArrayExplorer.js:301-305: >>> 301: var y = findXY(this.image2d.image).y; >>> 302: var dh = document.body.clientHeight; // this is discard as the next >>> line overwrites it >>> 303: var dh = window.innerHeight; // this seemed to return NaN >>> 304: var h = dh - y - 16; >>> 305: this.image2d.container.style.height = h + 'px'; // got a string >>> starting with NaNNaN... -> Invalid Argument error >>> >>> Problem: Similar to the previous one. Under some circumstances here, we'll >>> end up with an invalid value for h (not a number), which is invalid for this >>> property's assignment. >>> Hack/Fix: Similar, should work out what the expected outcome is. I used an >>> hard-coded value as this as sufficient for our purposes at the moment. >> >> Same here. I'm also thinking of at least doing: >> var dh = window.innerHeight; >> /* If NaN, try fallback solution */ >> if (isNaN(dh)) { >> dh = document.body.clientHeight; >> } > > Jay might be able to try that if he gets the chance and tell us how it goes. > > A more complete solution would be something alones the lines of: > http://stackoverflow.com/questions/1766861/find-the-exact-height-and-width-of-the-viewport-in-a-cross-browser-way-no-proto Adopted the viewport() function proposed there. > >> I'm certainly not on top of Javascript + DOM + cross-browser support. >> I guess jQuery or alikes have solved these cross-browser issues. > > There are few libraries you could consider using from within your > framework to alleviate this kind of issues. If you know of any lightweight stable and de facto standard libs, I'm all ears. Thanks, Henrik > jQuery might be a bit overkill if it's only for such things, but maybe > you could reuse it for other things. > >>> [...] > > -- > Laurent Malvert | Senior Software Developer | IDBS > lmalv...@idbs.com | www.idbs.com > > Powering Science for a Better Future > > > The information contained in this email may contain confidential or legally > privileged information. If you are not the intended recipient any disclosure, > copying, distribution or taking any action on the contents of this > information may be unlawful. If you have received this email in error, please > delete it from your system and notify us immediately. Any views expressed in > this message are those of the individual sender, except where the message > states otherwise. IDBS takes no responsibility for any computer virus which > might be transferred by way of this email and recommends that you subject any > incoming E-mail to your own virus checking procedures. We may monitor all > E-mail communication through our networks. If you contact us by E-mail, we > may store your name and address to facilitate communication. > > -- > When reporting problems on aroma.affymetrix, make sure 1) to run the latest > version of the package, 2) to report the output of sessionInfo() and > traceback(), and 3) to post a complete code example. > > > You received this message because you are subscribed to the Google Groups > "aroma.affymetrix" group with website http://www.aroma-project.org/. > To post to this group, send email to aroma-affymetrix@googlegroups.com > To unsubscribe and other options, go to http://www.aroma-project.org/forum/ -- When reporting problems on aroma.affymetrix, make sure 1) to run the latest version of the package, 2) to report the output of sessionInfo() and traceback(), and 3) to post a complete code example. You received this message because you are subscribed to the Google Groups "aroma.affymetrix" group with website http://www.aroma-project.org/. To post to this group, send email to aroma-affymetrix@googlegroups.com To unsubscribe and other options, go to http://www.aroma-project.org/forum/