【问题标题】:How to use local URLs after HTML BASE tag如何在 HTML BASE 标记后使用本地 URL
【发布时间】:2013-06-17 00:22:54
【问题描述】:

在以下标记之后:

<base href="http://mycompany.com/">

我该怎么做?包含本地样式表(本地:与 HTML 文件在同一目录中):

<script src="[what to write here?]standard.js" type="text/javascript"></script>

?

【问题讨论】:

    标签: html css url include base


    【解决方案1】:

    FIRST src/href 属性在运行时由它自己解析。你只需要指定相对地址..
    SECOND如果你想使用&lt;base&gt;标签..你需要做的就是指定&lt;base href="" target=""&gt;
    现在,您指定的所有 src/href 属性都将被称为基于&lt;base&gt; 标签的相对地址。
    进一步的所有链接,无论您指定目标或他们是否从&lt;base&gt; 标记
    For example

    【讨论】:

    • 谢谢,现在我可以理解发生了什么,但在我的情况下它不起作用:),html文件在我电脑上的一个文件中,基础是指公司网站:P
    • @gen 如果是这种情况,您可能根本不需要使用 Base,只需确保资源(.js/.css)也存储在本地。如果这不能为您解决问题,
    • @redditor 是的,也许吧,但也许不是 :),无论如何,你让我了解了情况,这才是最重要的
    • @gen &lt;base&gt; 如果您希望每个 &lt;a&gt; 标签在新标签或窗口中打开,可能会有帮助
    【解决方案2】:

    有趣的想法,虽然你不能在 HTML 中做到这一点。我首先想到了一个 PHP 解决方法,但是这个 Javascript 想法怎么样:(在需要时清除基本标记)

    function BaseWorkaround(elementId) {
        var baseTag = document.getElementsByTagName("base")[0];
        var existingBaseHref = baseTag.href;
        baseTag.href = "";
        location.href = elementId;
        baseTag.href = existingBaseHref;
      }
    

    然后在你的href上你可以做类似的事情

     ="BaseWorkaround('your_url_goes_here')">
    

    【讨论】:

      【解决方案3】:

      第一件事是,您包含的是 javascript,而不是样式表。 其次,您无需编写任何内容,只需文件名 (.css/.js) 即可完成工作。 即

      &lt;script src="standard.js" type="text/javascript"&gt;&lt;/script&gt;

      【讨论】:

      • 我很确定它在 标记之后不起作用... -.- 这是最明显的解决方案,当然,它不起作用
      【解决方案4】:

      如果它在同一张地图中,则为&lt;script src="standard.js" type="text/javascript"&gt;&lt;/script&gt;。 所以在那之前什么都没有

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-06-27
        • 1970-01-01
        • 2013-05-11
        • 2012-11-29
        • 1970-01-01
        • 1970-01-01
        • 2013-01-14
        相关资源
        最近更新 更多