Bob,

This is the cat's meow. Thanks for the help. I'm still stuck with a server side approach (AJAX very frustrating!), but the "Jmol load completed" approach seems to work. Cholestane is below. What a slick way to communicate 3D models via email:

http://chemagic.com/web_molecules/script_page_large.aspx?smiles=...@h]%28cccc%28c%29c%29[c@H]1CC[C@@H]2[C@@]1%28c...@h]3[c@H]2CCC4[C@@]3%28CCCC4%29C%29C

For the JME applet on our page, I'm now using a choice of two load links - jmeFile or smiles.

I'm interested in how the above link works on Mac. Also, note that the jmol javascript command does not work with Windows MSIE 8, so the above link does not work on MSIE. On this problem, MSIE ignores the following from the console:

javascript alert("rats")

The message returned is:

evalintermediatevaluetoreturn = eval >> ( << "!!_jmol.noEval" )

Chrome and Firefox work just fine - link load and simple alert. Unfortunately, MSIE never sees the Jmol loaded function.

I think the stereochemisrty of cholestane transferred correctly.

Otis





On 6/1/2010 12:37 PM, Robert Hanson wrote:


On Tue, Jun 1, 2010 at 9:03 AM, Otis Rothenberger <osrot...@chemagic.com <mailto:osrot...@chemagic.com>> wrote:

    Bob,

    You may have told me before, but I forget. How do you signal
    JavaScript that the Jmol applet is loaded? I've tried putting a
    Jmol javascript command into the Jmol load script, but MSIE seems
    to ignore this.


jmolApplet(300, "load xxxx;javascript 'loadDone()' ")


Sorry -- my error -- in this case you need double quotes or no quotes, not single quotes (because it is in the class of commands such as echo and message. That should read:

jmolApplet(300, 'load xxxx;javascript "loadDone()" ')



    AJAX would be nice, but I can't get past the cross domain security
    issue with the unsigned applet. The signed applet scares many
    users, so I'm using my server to get past this issue.
    Unfortunately, this means each SMILES to mofile is a new load on
    my page.


AJAX would be perfect. Just have the applet issue the above loadDone() function, and then have the AJAX just return the data as text from IU to a JavaScript function. I know, it's tricky to do this right with different browsers....



    Getting the returned molfile into into a JavaSript variable is a
    bit convoluted with ASP.NET <http://ASP.NET>, but it's doable.
    Normally this is not a problem, but the line feeds create a
    problem in the case of the molfile. I have to go to a hidden field
    and then transfer to a JavaScript variable.


Sounds retro.


    Anyway, with the above stage set, I just need to be able to hold
    the JavaScript load to Jmol off until the applet is loaded.


right - switch those quotes.


    Otis


------------------------------------------------------------------------------

_______________________________________________
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users

Reply via email to