如果我更改我的CSS文件并重新加载/刷新我的D3.js驱动页面,则不会显示CSS更改。显示CSS更改的唯一方法是清除浏览器缓存。我编辑网站CSS的其他网页不会发生这个问题。除非清除缓存,否则使用d3.js保存在旧的CSS文件上的唯一内容。
。由于我不能指望用户在加载D3.js驱动的页面之前每次清除缓存,所以我如何确保他们更改我的CSS?
D3.js网站结构:
index.php在头部带来d3.js
<script type="text/javascript" src="d3/d3v428.js"></script>
index.php在一些创建d3chart的jQuery中带有一个JSON文件。该图是JSON文件中PHP页面的结构。每个PHP页面都有指向其头部CSS文件的链接。
<link rel="stylesheet" href="style.css" type="text/css" />
json文件的狙击(每个.php文件都有一个链接到style.css file.css file;仅当我清除浏览器cache时显示对CSS的更改)
[
{
"id": "0",
"title": "Page1",
"asChildText": "null",
"url": "1.php",
"parentId": "null",
"children": [
{
"id": "53",
"title": "Page21",
"asChildText": "Let's begin!",
"url": "21.php",
"parentId": "0",
"children": [
{
"id": "1",
"title": "Page16",
"asChildText": "Step1",
"url": "16.php",
"parentId": "53",
"children": [
JSON文件中未使用的PHP页面未使用的CSS文件确实显示了重新加载上CSS的更改。因此,JSON似乎已连接到CSS未更新。
谢谢
某种程度上,CSS文件的路径与JSON文件丢失/混淆。通过在CSS文件的引用前添加一个./解决了问题。我可以更改CSS,刷新浏览器并查看更改。
<link rel="stylesheet" href="./style.css" type="text/css" />
您需要此行:
<link rel="stylesheet" href="./style.css" type="text/css" />
下面解释了" ./"位的原因:
单点用于当前目录。双点用于父目录:
./ = current
../ = parent
希望有帮助:)