我正在试图弄清楚是否有办法(使用JavaScript或jQuery)遍历整个HTML文件,替换所有对外部文件的引用,并替换所有对其他目录中文件的引用相同的命名文件,但没有目录信息。
例如,在HTML文本中:
scripts/script.js
被script.js
images/big.jpg
被big.jpg
css/style.css
被style.css
等
我猜CSS文件中的引用也需要改变。
答案 0 :(得分:1)
您的浏览器的将页面另存为... ?
答案 1 :(得分:1)
下面的代码非常混乱,它会很整洁,但我希望你能解决所需的问题。
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js" type="text/javascript"></script>
<script language="JavaScript">
$(function(){
$("*", $("#container")).each(function()
{
try
{
//src
if ($(this).attr("src"))
if ($(this).attr("src").lastIndexOf("/")!=-1)
$(this).attr("src", $(this).attr("src").substr($(this).attr("src").lastIndexOf("/")+1) );
//href
if ($(this).attr("href"))
if ($(this).attr("rel"))
if ($(this).attr("rel")=="stylesheet")
if ($(this).attr("href").lastIndexOf("/")!=-1)
$(this).attr("href", $(this).attr("href").substr($(this).attr("href").lastIndexOf("/")+1) );
}
catch(ex)
{
$("#lstError").append("<div>"+ex.description+"</div>");
}
});
});
</script>
</head>
<body>
<div id="lstError"></div>
<div id="container">
<!-- your html -->
<link rel="stylesheet" href="pepe/all.css">
<img src="lele/bl.png" />
<img src="lele/b.png" />
</div>
</body>
</html>