Javascript jQuery attr()不';t支持属性或方法';更换';
我有下面的脚本,它在chrome/Firefox中运行良好,但在IE中不起作用 对象不支持属性或方法“替换” 我需要替换url的一部分,并在新选项卡中打开该链接。基本上,它是在一个安全的站点后面运行的,所有的外部链接都会在前面显示服务器名称,所以我需要用“http:”来替换它Javascript jQuery attr()不';t支持属性或方法';更换';,javascript,jquery,Javascript,Jquery,我有下面的脚本,它在chrome/Firefox中运行良好,但在IE中不起作用 对象不支持属性或方法“替换” 我需要替换url的一部分,并在新选项卡中打开该链接。基本上,它是在一个安全的站点后面运行的,所有的外部链接都会在前面显示服务器名称,所以我需要用“http:”来替换它 $('a[href*="youtube.com"]').attr("href", $('a[href*="youtube.com"]').replace ("https://serverdomain.com/", "htt
$('a[href*="youtube.com"]').attr("href", $('a[href*="youtube.com"]').replace ("https://serverdomain.com/", "http:"))
仅在IE上出现上述脚本抛出错误。首先,您试图在jQuery对象上使用
replace
,因此得到replace is undefined
错误。其次,可以使用一个函数,您可以使用该函数更简单地返回替换的值。试试这个:
$('a[href*="youtube.com"]').attr("href", function(i, value) {
return value.replace("https://serverdomain.com/", "http:");
});
我想您还需要将
http:
更改为http://
,以确保您的URL保持有效。首先,您试图在jQuery对象上使用replace
,因此您得到replace is undefined
错误。其次,可以使用一个函数,您可以使用该函数更简单地返回替换的值。试试这个:
$('a[href*="youtube.com"]').attr("href", function(i, value) {
return value.replace("https://serverdomain.com/", "http:");
});
我想您还需要将
http:
更改为http://
,以确保您的URL保持有效。“即上面的脚本抛出错误”您确实需要共享此错误。@spender它在标题中;)啊。好球@Rorymcrossan;)“IE上面的脚本抛出错误”您确实需要共享此错误。@spender它在标题中;)啊。好球@Rorymcrossan;)