2012-08-26 32 views
0

我有以下我的网页底部的结束标记之前的代码小片段:的href属性拒绝页面加载后要重新设置

var myAnchor = document.getElementById("tools").getElementsByTagName("a")[0]; 
var myHref = myAnchor.href; 
myHref = "http://www.failblog.org"; 
alert(myHref); 

页面提示“HTTP:// WWW .failblog.org“,如预期的那样,但它实际上并没有改变锚点的href属性的值。该链接固执地保留其原始的href。谁能告诉我我做错了什么?

回答

2

你做了错误的方式,试试这个:

myHref = "http://www.failblog.org"; 
    var myAnchor = document.getElementById("tools").getElementsByTagName("a")[0]; 
    myAnchor.href = myHref; 
    alert(myHref); 
+0

呃!我很愚蠢。我在想,因为我以前给myHref的值myAnchor.href,当我给myHref它的新值时我说myAnchor.href =“http://failblog.org”实际上我给myHref一个新的值然后无所作为!谢谢! – JulianJohannesen

+0

那些“Duh!”的时刻发生了很多对任何开发人员,没关系:) –

1

当设置为var myHref = myAnchor.href;时,字符串值myHref将设置为字符串值myAnchor.href;,该变量未被指定为引用,而是作为该值的副本。

+0

谢谢,@Ragnagord! – JulianJohannesen

0

更改代码这样:

var myHref = "http://www.failblog.org"; 
var myAnchor = document.getElementById("tools").getElementsByTagName("a")[0]; 
myAnchor.href = myHref; 
+0

谢谢,Virendra! – JulianJohannesen

相关问题