繁体   English   中英

在Rails中加载外部JavaScript

[英]load external javascript in rails

我想通过在js中注入脚本元素和文件的src来并行下载javascript文件,如下所示

:javascript
  var script = document.createElement("script");
  script.src = "/javascript/some_javascript_file.js";
  script.type = "text/javascript"
  $("head").append(script)

....(使用haml,jquery ..)

通过萤火虫在rails中我找不到一个404文件,看起来像这样

GET http:// localhost:3000 / javascript /%5object%20HTMLScriptElement%5D 404未找到

..我看到通过javascript_include_tag添加的其他js文件加载正常

GET http:// localhost:3000 / javascript / another_js_file.js?1221321321 ...

我知道Rails在js文件中添加了版本号以进行版本控制。 由于这个原因,不可能像我一样动态加载js吗? 我还注意到脚本名称也被混淆了(%5object%20HTMLScriptElement%5D)。 有办法做到这一点吗? 我在网上看过,找不到任何东西。

我只是注意到404的网址与我在src中指定的网址不同。 在src中,我有“ /rails/javascripts/javascript_file.js”,但在404错误中,其列出为从http://localhost.admeld.com:3000/rails/some_namespace/%5Bobject%20HTMLScriptElement%5D获取文件

编辑:jQuery getScript调用工作。

$.getScript('/rails/javascripts/javascript_file.js', function(data, textStatus){
   console.log(data); //data returned
   console.log(textStatus); //success
   console.log('Load was performed 0.');
});

尝试这个:

   :javascript
      var script = document.createElement("script");
      script.src = "/javascript/some_javascript_file.js";
      script.type = "text/javascript"
      $("head").get(0).appendChild(script);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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