Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery attr()不';t支持属性或方法';更换';_Javascript_Jquery - Fatal编程技术网

Javascript jQuery attr()不';t支持属性或方法';更换';

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

我有下面的脚本,它在chrome/Firefox中运行良好,但在IE中不起作用

对象不支持属性或方法“替换”

我需要替换url的一部分,并在新选项卡中打开该链接。基本上,它是在一个安全的站点后面运行的,所有的外部链接都会在前面显示服务器名称,所以我需要用“http:”来替换它

$('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;)