【问题标题】:javascript: how can I know where is the .js self?javascript:我怎么知道 .js 自我在哪里?
【发布时间】:2011-06-08 02:42:09
【问题描述】:

我编写了一个小型 javascript 库,它使用图像。 我想建立这样的目录结构:

/lib /mylib main.js /img 主要.png /其他库... 索引.html

但是如果我硬编码图像路径lib/mylib/img/main.png,我的库就不能在其他目录结构中使用。

我想要的是使用相对于 main.js 自身的“相对路径”。这样我就可以写path + 'img/main.png' 来访问图像。

我怎么知道 main.js 在哪里?

【问题讨论】:

  • 因此,如果您的 JavaScript 库包含在某个页面中,main.js 的路径是否会类似于 http://example.com/lib/mylib/main.js
  • 是的。 (我需要 15 个字符...)

标签: javascript relative-path


【解决方案1】:

你可以从你的<script>标签中提取它:

function getScriptPath() {
  var scriptTags = document.getElementsByTagName('script');

  return scriptTags[scriptTags.length - 1].src.split('?')[0].split('/').slice(0, -1).join('/') + '/';
}

【讨论】:

  • 这是一个解决方案。但是使用这个工具,我的 lib 无法与 require.js 之类的模块管理器一起使用...
  • 我通常不使用
  • 我认为框架实际上是动态添加<script>标签来加载你的框架。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-06-04
  • 2012-07-02
  • 1970-01-01
  • 2010-12-24
  • 1970-01-01
  • 2021-12-01
相关资源
最近更新 更多