Получить параметры файла .js - PullRequest
3 голосов
/ 08 февраля 2010

У меня есть файл JavaScript, на который я ссылаюсь в HTML со стандартным <script src="foo.js?param"></script>. В файле, который я хочу выделить, например, загрузка файла с foo.js из foo.js?auto и foo.js?noauto=true, но не в том случае, если файл переименован в bar.js и на него ссылается тот же параметр. Как я могу сделать это, желательно не используя какие-либо рамки?

Ответы [ 2 ]

5 голосов
/ 08 февраля 2010

Взгляните на сценарийный подход:

var js = /scriptaculous\.js(\?.*)?$/;
$$('head script[src]').findAll(function(s) {
  return s.src.match(js);
}).each(function(s) {
  var path = s.src.replace(js, ''),
  includes = s.src.match(/\?.*load=([a-z,]*)/);
  (includes ? includes[1] : 'builder,effects,dragdrop,controls,slider,sound').split(',').each(
   function(include) { Scriptaculous.require(path+include+'.js') });
});

Я думаю, что он проходит через все элементы скрипта и находит ссылку на себя, а затем анализирует этот URL.

1 голос
/ 08 февраля 2010

Если вы хотите сделать это надежно, то вам нужно предоставить разные JS для каждого URL. Вы можете сгенерировать его с помощью сценария на стороне сервера.

Если вы хотите сделать это в чистом JS, тогда вы можете getElementsByTagName('script') и предположить, что последний скрипт - тот, который соответствует (это может быть не так, например, если элементы скрипта добавляются с использованием DOM после загрузки страницы) .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...