前端 - js、css外部文件的相对路径问题

如果js、css外部文件有使用到相对路径时,需要注意其相对路径的基准是不一样的。

比如说,在index.html中引用到了外部的js和css文件,这两个文件都通过相对路径引用了某一张图片;这些文件所在的目录如下:

.
├── js
|   └── index.js
├── css
|   └── index.css
├── images
|   └── bg.jpg
└── index.html

js文件的相对路径是以引用该js文件的页面为基准,所以在js文件中的相对路径是:

function changeImage(){
    document.body.style.backgroundImage="url(images/bg.jpg)";
}

css文件的相对路径是以自身的位置为基准,所以在css文件中的相对路径是:

.index_bg {
    background-image: url(../images/bg.jpg);
}

index.html的代码如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>index</title>
<link rel="stylesheet" href="css/index.css" type="text/css">
</head>
<body>

<h1>Hello World!</h1>
<div class="index_bg"></div>
<br>
<button type="button" onclick="changeImage()">设置背景图片</button>

<script src="js/index.js"></script>
</body>
</html>

总结

  • js文件的相对路径是以引用该js文件的页面为基准
  • css文件的相对路径是以自身的位置为基准

原文地址:https://www.cnblogs.com/yulinlewis/p/9114157.html

时间: 2024-08-25 15:09:22

前端 - js、css外部文件的相对路径问题的相关文章

gulp实现打包js/css/img/html文件,并对js/css/img文件加上版本号

参考打包教程: http://www.cnblogs.com/tugenhua0707/p/4069769.html http://www.cnblogs.com/tugenhua0707/p/4982646.html http://www.tuicool.com/articles/viequay 实现要点: 1.如何运行gulp的任务,加入新建好一个如下任务: // 语法检查 gulp.task('jshint', function () { gulp.src('js/**/*.js') .p

前端js上传文件 到后端接收文件

下面是前端js代码: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=GB18030"> <title>File upload</title> </head> <body> <!-- // action="fileupload"对应web.xml中<se

web项目js css静态文件缓存解决

在web开发过程中经常会遇到js及css文件缓存的问题,开发过程中我们可以自己手动的清空浏览器缓存,但是我们没法告诉用户去执行一个他们或许不熟悉的操作(清空浏览器缓存),为解决这个问题,编写了一个grunt插件,在前端构建的时候,可以使用grunt插件来做这件事情,就是将js及css文件自动的加上一个版本号(这里我用的是时间戳) 基于grunt的js 及css文件自动加version的插件,可以将配置的目录下所有引用到指定匹配的js及css文件加上一个版本号 github地址:    https

Maven项目WEB-INF/views无法引入js,css静态文件解决方法

web.xml针对文件后缀配置以下,对客户端请求的静态资源如图片.JS文件等的请求交由默认的servlet进行处理 <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.css</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>default<

定义不被SpringMVC拦截的静态资源(html, js, css等文件),通用方法,不需要每个目录都设置

springMVC的<mvc:resources mapping="***" location="***">标签是在spring3.0.4出现的,主要是用来定义对静态资源的访问. 上网搜了一下跟这个配置相关的文章,大多推荐用下面这种.可是,用这种的话,如果有一个新目录,就得新增一条配置,比较麻烦. <!-- For static resources --> <mvc:resources mapping="/image/**&q

前端js上传文件后端C#接收文件

本文粗略的讲下前端文件上传和后端文件接收的原理 前端代码 html <form onsubmit="uploadFile(event)"> <input type="file" /> <button type="submit">文件上传</button> </form> js function uploadFile(event) { var files = event.target[0]

Java程序中读取外部文件时的路径问题

转自:https://www.cnblogs.com/wt20/p/8320346.html 项目经常会读取一些配置文件, 因此getResource方法便能够起到重要作用 使用时主要是两种方法, 一个是字节码文件Class类, 另一个是ClassLoader类加载器 使用Class类时有两种使用方式: 1. 使用"/"  获取到的是classpath路径 2. 不使用"/" 这就是相对路径 ClassLoader类 没有"/"的写法, 获取到的

通过js获得选择文件的绝对路径

<form name="thisform" method="get" action="test.jsp" id="thisform" enctype="multipart/form-data"> <input type="file" name="theFile" onchange="document.getElementById('theF

Django加入JS,CSS,图片等外部文件的方法

Django加入JS,CSS.图片等外部文件的方法 By 白熊花田(http://blog.csdn.net/whiterbear) 转载需注明出处,谢谢. 在使用Django搭建站点时,往往须要使用一些js,css或者图片等外部文件,这里给出使用它们的使用方法. 我的django版本号为:1.8.2 如果我们有project例如以下: sentiment_analysis |-mysite | |-mysite | |-manage.py | |-show_pages | | |-__init