js正则修改html中src的内容,正则替换html中的src路径为全路径
时间: 2024-02-16 07:04:52 浏览: 142
可以使用 JavaScript 中的正则表达式和字符串替换方法来实现。以下是一种可能的实现方式:
假设你的 HTML 页面中有一些相对路径的图片和脚本:
```html
<!DOCTYPE html>
<html>
<head>
<title>My Page</title>
<script src="js/myScript.js"></script>
</head>
<body>
<h1>Welcome to my page</h1>
<img src="images/myImage.jpg" alt="My Image">
</body>
</html>
```
你可以使用以下代码将这些相对路径替换为绝对路径:
```javascript
// 获取当前页面的绝对路径
var baseUrl = window.location.href.split('/').slice(0, -1).join('/');
// 替换图片的路径
var html = document.documentElement.outerHTML;
var newHtml = html.replace(/<img\s+src="([^"]+)"/g, '<img src="' + baseUrl + '/$1"');
// 替换脚本的路径
newHtml = newHtml.replace(/<script\s+src="([^"]+)"/g, '<script src="' + baseUrl + '/$1"');
// 更新页面 HTML
document.open();
document.write(newHtml);
document.close();
```
这段代码会获取当前页面的绝对路径,然后使用正则表达式替换 HTML 中的所有 `img` 和 `script` 标签的 `src` 属性,将相对路径改为绝对路径。最后,它会更新页面 HTML,使更改生效。
阅读全文