<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">I'm using JavaScript core to integrate JavaScript as an embedded scripting engine in my application.<div><br></div><div>I've gotten a lot of "stuff" working (which is a lot of fun, BTW). I've been able to run scripts and see them manipulate objects in my application model (windows and the like... just to see if I could) as well as objects in the object model (in the MVC sense) of my problem domain.</div><div><br></div><div>I've added a scripting menu. &nbsp;I want the scripts that are run through that menu to be executed "in the scope" of the frontmost document. That is, I would like the a script whose textual content is the word &nbsp;"this" to evaluate to the document object of the frontmost document. &nbsp;To that end, I'm calling&nbsp;<span class="Apple-style-span" style="color: rgb(46, 13, 110); font-family: Monaco; font-size: 10px; ">JSEvaluateScript<span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; ">&nbsp;and I'm passing the JSObjectRef for my document object as it's third parameter, "<span class="Apple-style-span" style="font-family: Monaco; font-size: 10px; ">thisObject<span class="Apple-style-span" style="font-family: Helvetica; font-size: 12px; ">".</span></span></span></span></div><div><br></div><div>Even when doing so, however, I find that within my scripts the variable "this" still refers to the global context and not the frontmost document. &nbsp;For example, I'm able to successfully evaluate the script:</div><div><br></div><div>this.documents[0].addDocumentElement()</div><div><br></div><div>(where documents is a property I add to the global context and is roughly equivalent to [NSApp orderedDocuments]) I would rather have the script:</div><div><br></div><div>this.addDocumentElement()</div><div><br></div><div>do the same thing... that is JSEvaluateScript should use the document object for "this"</div><div><br></div><div>Am I simply misinterpreting the purpose of the "thisObject" parameter to JSEvaluateScript?</div><div><br></div><div>Scott</div><div><br></div></body></html>