做手机网站的时候图片要做自适应,由于手机网站跟PC网站共用1个数据库,导致文章内的图片有部分带有:等属性,导致手机端图片width:100%失效,去掉mg标签style属性只保留src即可解决问题
ASP去除img标签style属性只保留src
'功能:将IMG代码格式化为<img src="XXX" />格式,只保留SRC属性,去掉IMG标签的其他属性。
Function FixImg(sString)
Dim sReallyDo, regEx, iReallyDo
Dim oMatches, cMatch
Dim tStartTime, tEndTime
If IsNull(sString) Then
FixImg = ""
Exit Function
End If
sReallyDo = sString
On Error Resume Next
sReallyDo = Replace(sReallyDo, vbCr, " ")
sReallyDo = Replace(sReallyDo, vbLf, " ")
sReallyDo = Replace(sReallyDo, vbTab, " ")
sReallyDo = Replace(sReallyDo, "<img ", vbCrLf & "<img ", 1, -1, 1)
sReallyDo = Replace(sReallyDo, "/>", " />", 1, -1, 1)
sReallyDo = ReplaceAll(sReallyDo, "= ", "=", True)
sReallyDo = ReplaceAll(sReallyDo, "> ", ">", True)
sReallyDo = Replace(sReallyDo, "><", ">" & vbCrLf & "<")
sReallyDo = Trim(sReallyDo)
On Error GoTo 0
Set regEx = New RegExp
regEx.IgnoreCase = True
regEx.Global = True
'//去除onclick,onload等脚本
regEx.Pattern = "\s[on].+?=([\""|\'])(.*?)\1"
sReallyDo = regEx.Replace(sReallyDo, "")
'//将SRC不带引号的图片地址加上引号
regEx.Pattern = "<img.*?\ssrc=([^\""\'\s][^\""\'\s>]*).*?>"
sReallyDo = regEx.Replace(sReallyDo, "<img src=""$1"" />")
'//正则匹配图片SRC地址
regEx.Pattern = "<img.*?\ssrc=([\""\'])([^\""\']+?)\1.*?>"
sReallyDo = regEx.Replace(sReallyDo, "<img src=""$2"" />")
FixImg = sReallyDo
End Function
上面的代码确实写得不错,原理也可以参考下面的代码
js过滤img里style属性
var str = "<img style='ddddddddd'>"
str = str.replace(/<img[^>]*>/gi, function (match, capture) {
return match.replace(/style\s*?=\s*?([‘"])[\s\S]*?\1/ig, '')
}))
console.log(str)
不是替换直接通过js设置
var is=document.images;
for(var i=0,len=is.length;i<len;i++){
is[i].style.cssText=""
}
ASP删除img标签的style属性只保留src的正则函数
做手机网站的时候图片要做自适应,由于手机网站跟PC网站共用1个数据库,导致文章内的图片有部分带有:等属性,导致手机端图片width:100%失效,去掉mg标签style属性只保留src即可解决问题 ASP去除img标签style属性只保留src 功能:将IMG代码格式化为img src=X
本文来自网络,不代表站长网立场,转载请注明出处:https://www.tzzz.com.cn/html/jc/asp/2021/1209/34814.html