我有一个网址
http://www.example.com/" onmouseover="alert('howdy')
在此网址中,我想删除所有活动,例如onmouserover
,onmouseclick
等。
我尝试使用以下代码从URL
中提取String
:
function UrlExtract(Url) {
var pattern = new RegExp(/(?:(?:https?|ftp|file):\/\/|www\.|ftp\.)(?:\([-A-Z0-9+&@#\/%=~_|$?!:,.]*\)|[-A-Z0-9+&@#\/%=~_|$?!:,.])*(?:\([-A-Z0-9+&@#\/%=~_|$?!:,.]*\)|[A-Z0-9+&@#\/%=~_|$])/igm);
Url = String(Url).match(pattern);
return Url;
}
我想要的是用户指定要从Url
字符串中删除哪些事件,并且只删除那些事件。
请帮帮我。
答案 0 :(得分:0)
检查以下代码
var url = "example.com/; onmouseover=alert('howdy');onclick=alert('click'); onmouseout=alert('out')"
function removeString(originalStr, strArr) {
if(strArr.constructor === Array) {
for(var i = 0; i < strArr.length; i++) {
originalStr = originalStr.replace(strArr[i], '');
}
}
return oriStr;
}
console.log(removeString(url, [" onclick=alert('click');", " onmouseover=alert('howdy');"]));
//output: "example.com/; onmouseout=alert('out')"