dojo/_base/window.js

  • Provides:

    • dojo
  • dojo.doc

    • type
      Object
    • summary
      Alias for the current document. 'dojo.doc' can be modified
      for temporary context shifting. Also see dojo.withDoc().
    • description
      Refer to dojo.doc rather
      than referring to 'window.document' to ensure your code runs
      correctly in managed contexts.
    • example
      
      	n.appendChild(dojo.doc.createElement('div'));
  • dojo.body

    • type
      Function
    • source: [view]
      define("dojo/_base/window", ["dojo/lib/kernel"], function(dojo){




      dojo.doc = {
       // summary:
       //  Alias for the current document. 'dojo.doc' can be modified
       //  for temporary context shifting. Also see dojo.withDoc().
       // description:
       // Refer to dojo.doc rather
       // than referring to 'window.document' to ensure your code runs
       // correctly in managed contexts.
       // example:
       //  | n.appendChild(dojo.doc.createElement('div'));
      }


      dojo.doc = window["document"] || null;


      dojo.body = function(){
       // summary:
       //  Return the body element of the document
       //  return the body object associated with dojo.doc
       // example:
       //  | dojo.body().appendChild(dojo.doc.createElement('div'));


       // Note: document.body is not defined for a strict xhtml document
       // Would like to memoize this, but dojo.doc can change vi dojo.withDoc().
       return dojo.doc.body || dojo.doc.getElementsByTagName("body")[0]; // Node
    • summary
      Return the body element of the document
      return the body object associated with dojo.doc
    • returns
      Node
  • dojo.setContext

    • type
      Function
    • parameters:
      • globalObject: (typeof Object)
      • globalDocument: (typeof DocumentElement)
    • source: [view]
       dojo.global = globalObject;
       dojo.doc = globalDocument;
    • summary
      changes the behavior of many core Dojo functions that deal with
      namespace and DOM lookup, changing them to work in a new global
      context (e.g., an iframe). The varibles dojo.global and dojo.doc
      are modified as a result of calling this function and the result of
      `dojo.body()` likewise differs.
  • dojo.withGlobal

    • type
      Function
    • parameters:
      • globalObject: (typeof Object)
      • callback: (typeof Function)
      • thisObject: (typeof Object)
      • cbArguments: (typeof Array)
    • source: [view]
       var oldGlob = dojo.global;
       try{
        dojo.global = globalObject;
        return dojo.withDoc.call(null, globalObject.document, callback, thisObject, cbArguments);
       }finally{
        dojo.global = oldGlob;
       }
    • summary
      Invoke callback with globalObject as dojo.global and
      globalObject.document as dojo.doc.
    • description
      Invoke callback with globalObject as dojo.global and
      globalObject.document as dojo.doc. If provided, globalObject
      will be executed in the context of object thisObject
      When callback() returns or throws an error, the dojo.global
      and dojo.doc will be restored to its previous state.
    • chains:
      • dojo.withDoc: (call)
  • dojo.withDoc

    • type
      Function
    • parameters:
      • documentObject: (typeof DocumentElement)
      • callback: (typeof Function)
      • thisObject: (typeof Object)
      • cbArguments: (typeof Array)
    • source: [view]
       var oldDoc = dojo.doc,
        oldLtr = dojo._bodyLtr,
        oldQ = dojo.isQuirks;


       try{
        dojo.doc = documentObject;
        delete dojo._bodyLtr; // uncache
        dojo.isQuirks = dojo.doc.compatMode == "BackCompat"; // no need to check for QuirksMode which was Opera 7 only


        if(thisObject && typeof callback == "string"){
         callback = thisObject[callback];
        }


        return callback.apply(thisObject, cbArguments || []);
       }finally{
        dojo.doc = oldDoc;
        delete dojo._bodyLtr; // in case it was undefined originally, and set to true/false by the alternate document
        if(oldLtr !== undefined){ dojo._bodyLtr = oldLtr; }
        dojo.isQuirks = oldQ;
       }
    • summary
      Invoke callback with documentObject as dojo.doc.
    • description
      Invoke callback with documentObject as dojo.doc. If provided,
      callback will be executed in the context of object thisObject
      When callback() returns or throws an error, the dojo.doc will
      be restored to its previous state.
  • dojo

    • type
      Object
    • summary