简体   繁体   中英

sharing a js functions between code in 2 files

My jquery code is divided file is divided over 2 files.

In one of the file, I define a function

function something(input){
  //does something
}

calling this function only works when the caller line is in the same file. But I need to call it from both files.

If I switch the function to the second file, again I get the same issue. The code in the same file can read it, but not the code in the other file.

Place your functions outside of $(document).ready(function() { }); to give them global scope. Anything placed within it cannot be accessed from the outside.

You can then look into using a namespace to encapsulate your functions. This helps to avoid clutter of the global namespace.

You need to create a namespace object , which is shared between your files.

fileA.js

window.mynamespace = window.mynamespace || {};

mynamespace.something = function(input) {
    // do something
};

fileB.js

window.mynamespace = window.mynamespace || {};

mynamespace.something();

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM