首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >动态链接css

动态链接css
EN

Stack Overflow用户
提问于 2022-06-21 07:08:36
回答 2查看 57关注 0票数 -1

我的文件夹结构如下所示:

代码语言:javascript
复制
|--js
  |-- main.js
|--css
  |--main.css
|--Folder1
  |-- c.html
|--Folder2
  |-- d.html
|--a.html
|--b.html

所有html文件都将链接到main.js,我在js中有如下所示的东西来动态链接main.css,但这只适用于html a和b。对于html c和d,它希望css文件夹位于同一个文件夹中。

代码语言:javascript
复制
var theorigin = window.location.origin;
var thefile = window.location.pathname.split("/").pop();
var folder = window.location.pathname.replace(thefile, "");
var newdest = theorigin + folder;

var link = document.createElement("link");
link.href = newdest + "../css/main.css";
link.type = "text/css";
link.rel = "stylesheet";
document.head.appendChild(link);

有人知道如何做到这一点吗?将css动态链接到html,而不管文件夹如何?

注意:我知道我可以通过执行这个<link href="../css/main.css" rel="stylesheet" />来链接放在文件夹中的html中的css,但出于某些原因,我不想这样做。

EN

回答 2

Stack Overflow用户

发布于 2022-06-21 07:16:02

只需使用下面的代码。它直接指向根(/)。

代码语言:javascript
复制
link.href = "/css/main.css";
票数 2
EN

Stack Overflow用户

发布于 2022-06-21 07:15:41

我觉得你把代码弄得太复杂了。为什么不只是:

代码语言:javascript
复制
var link = document.createElement("link");
link.href = "/css/main.css";
link.type = "text/css";
link.rel = "stylesheet";
document.getElementsByTagName("head")[0].appendChild(link);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72696593

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档