首先,我对Web开发基本不懂。
一个HTML文件,被其引用的JS文件实时插入以下代码:
...
......
image:url(//www.1234.com/01.jpg) ....
...
........
这个HTML文件,直接在本地用浏览器打开,那么浏览器将试图访问:
file://www.1234.com/01.jpg
现在的问题是, image:url(//www.1234.com/01.jpg) 这个我无法控制也无法修改,并且这个HTML文件一定要在本地直接用浏览器打开, 是否有任何可能的办法可以让其访问 http://www.1234.com/01.jpg ???
可以在插入代码之后用js取出插入的html代码 把file://替换成 http://
obj.innerHTML = obj.innerHTML.replace(/file:\/\//g,"http://")
image:url(//www.1234.com/01.jpg)
//前面没有协议,是自动匹配当前协议,如果你用本地浏览,那么就访问 file://,如果你用iis或其他方式,模拟域名浏览,则会使用 http或https:// 访问
所以,这个 // 是没有协议的uri,如果你需要补上协议,按照海浪兄的代码,稍微变动下
obj.innerHTML.replace(/url\(\/\//gi,'url(http://')
能修改html吗?能的话用!important提高样式级别,覆盖js生成的css即可。有帮助可以点击个采纳【本回答右上角】吗,谢谢~
如原来的是
.className{background-image:url(//www.1234.com/01.jpg)}
你可以在head标签插入下面的代码覆盖掉这个样式中的background-image
<style>
.className{background-image:url(http://www.1234.com/01.jpg) !important}
</style>
</head>
className为js生成的样式名称
可以把url地址改为http://www.1234.com/01.jpg
至于这个地址问题怎么解决,可以通过nginx绑定域名完成配置静态目录映射,即可达到这个效果。
把你的html网页放在自己电脑上的本地服务器上,在同一个局域网(或者同一个路由器)上,就可以访问了,别人访问只需要在你访问的基础上加上你本机的ip就可以了
如:192.168.0.115/wangye/baidu.com,把localhost改为ip