Webmasters Stack Exchange is a question and answer site for pro webmasters. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

When you are loading JavaScript files via the <script> tag, you can only do it one-by-one, ie <script src="myFile.js"> or so I'm assuming. Is there a way to load an entire directory of .js files like src="dir/*"?

share|improve this question
up vote 5 down vote accepted

No - you cannot, by definition, (see RFC 1738) incorporate a wildcard into a URL.

If you have server-side scripting access you could embed a block of code which inserts a script tag for every file read from a directory or you could concatenate the scripts on-the-fly (concatenation is generally preferable as it requires less overhead to download a single concatenated file).

Most efficient solution: concatenate the relevant script files and link to that file from one <script> declaration.

[H]ow exactly would I do that on-the-fly?

Here's an example of how you might do that with a PHP file named all-js.php in the same directory with all your scripts:

    $output = '';
    $dir = dirname(__FILE__);
    $files = scandir( $dir );
    if ( $files )
        foreach ( $files as $file )
            if ( '.js' == substr( $file, -3, 3 ) )
                $output .= "/* file: $file */\n\n" . file_get_contents($file) . "\n\n";
    echo $output;
share|improve this answer
mmm.. I know what "concatenate" means, but how exactly would I do that on-the-fly? – Snailer Apr 2 '11 at 22:46
(Added PHP example) – danlefree Apr 3 '11 at 1:37
Wow thanks for the help! I'm just getting into php now, so I only know the basics. It works great! – Snailer Apr 4 '11 at 3:22

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.