課程
/前端開發
/JavaScript
/JavaScript進階篇
怎么用js來修改href屬性的值,暫時沒學jq
2016-11-07
源自:JavaScript進階篇 9-15
正在回答
修改了其中一段,見注釋
function?restoreMessage(){ ????var?oldnode=document.getElementById("oldnode"); ????var?newnode=document.createElement("b"); ????newnode.id="oldnode"???????????????????????//增加一個id,否則后面點擊取不了值 ????newnode.innerHTML=oldnode.innerHTML; ????oldnode.parentNode.replaceChild(newnode,oldnode); ????var?olda=document.getElementById("hah");? ????olda.innerHTML="將加粗改為斜體"; ????olda.setAttribute("href","javascript:replaceMessage()");???//這樣寫要加上javascript: }
匹配myemailis也可以,但是直接匹配email規則已經可以滿足通用需求。確實。不過可能他指的是冪次相差十倍吧。
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>無標題文檔</title>
</head>
<body>
? <div><b id="oldnode">JavaScript</b>是一個很常用的技術,為網頁添加動態效果。</div>
? <a href="javascript:replaceMessage()" id="hah"> 將加粗改為斜體</a>
??
? ? <script type="text/javascript">
? ? ? function replaceMessage(){
? ? ? ? var oldnode=document.getElementById("oldnode");
? ? ? ? var newnode=document.createElement("i");
? ? ? ? newnode.innerHTML=oldnode.innerHTML;
? ? ? ? oldnode.parentNode.replaceChild(newnode,oldnode);
? ?
? ? ? ? var olda=document.getElementById("hah"); ?//
? ? ? ? olda.innerHTML="將斜體改為加粗";
? ? ? ? //olda.href = olda.href.replace("replaceMessage()", "restoreMessage()");
? ? ? ? olda.setAttribute("href","restoreMessage()");
? ? ? ?}?
? ? ? ?function restoreMessage(){
? ? ? ? var newnode=document.createElement("b");
? ? ? ??
? ? ? ? olda.innerHTML="將加粗改為斜體";
? ? ? ? //olda.href = olda.href.replace("restoreMessage()", "replaceMessage()");
? ? ? ? olda.setAttribute("href","replaceMessage()");
? ? ? ?} ?
? </script>
?</body>
</html>
在console上面寫的,就這個頁面 document.getElementsByTagName("div")[0].setAttribute("href","hello") //undefined document.getElementsByTagName("div")[0] //<div?id="header"?href="hello">…</div>
href.replace(/default/,?"test")不會改變href本身,返回值才是處理后的結果
例:
<head><link?media="screen"?type="text/css"?href="default/style.css"?rel="stylesheet"/></head><body><div><script>window.onload?=?function(){ var?link?=?document.getElementsByTagName("link")[0]; link.href?=?link.href.replace("/default/",?"/test/"); alert(document.getElementsByTagName("link")[0].href);}</script></div></body>
XXX.setAttribute("href","xxx")或者XXX.href="xxx"
ohitisme 提問者
stone310 回復 ohitisme 提問者
ohitisme 提問者 回復 stone310
舉報
本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界
1 回答為什么"javascript:back();"能用作href的屬性值
1 回答js可以對html里面的任何屬性都修改么
3 回答怎么創建a標簽,并加href屬性
3 回答javascript中Math對象的屬性??梢孕薷拿?/p>
4 回答關于用setTimeout和value屬性改變秒值
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-11-08
修改了其中一段,見注釋
2022-03-25
匹配myemailis也可以,但是直接匹配email規則已經可以滿足通用需求。確實。不過可能他指的是冪次相差十倍吧。
2016-11-08
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>無標題文檔</title>
</head>
<body>
? <div><b id="oldnode">JavaScript</b>是一個很常用的技術,為網頁添加動態效果。</div>
? <a href="javascript:replaceMessage()" id="hah"> 將加粗改為斜體</a>
??
? ? <script type="text/javascript">
? ? ? function replaceMessage(){
? ? ? ? var oldnode=document.getElementById("oldnode");
? ? ? ? var newnode=document.createElement("i");
? ? ? ? newnode.innerHTML=oldnode.innerHTML;
? ? ? ? oldnode.parentNode.replaceChild(newnode,oldnode);
? ?
? ? ? ? var olda=document.getElementById("hah"); ?//
? ? ? ? olda.innerHTML="將斜體改為加粗";
? ? ? ? //olda.href = olda.href.replace("replaceMessage()", "restoreMessage()");
? ? ? ? olda.setAttribute("href","restoreMessage()");
? ? ? ?}?
? ? ? ?function restoreMessage(){
? ? ? ? var oldnode=document.getElementById("oldnode");
? ? ? ? var newnode=document.createElement("b");
? ? ? ? newnode.innerHTML=oldnode.innerHTML;
? ? ? ? oldnode.parentNode.replaceChild(newnode,oldnode);
? ? ? ??
? ? ? ? var olda=document.getElementById("hah"); ?//
? ? ? ? olda.innerHTML="將加粗改為斜體";
? ? ? ? //olda.href = olda.href.replace("restoreMessage()", "replaceMessage()");
? ? ? ? olda.setAttribute("href","replaceMessage()");
? ? ? ?} ?
? </script>
??
?</body>
</html>
2016-11-08
2016-11-08
href.replace(/default/,?"test")不會改變href本身,返回值才是處理后的結果
例:
<head>
<link?media="screen"?type="text/css"?href="default/style.css"?rel="stylesheet"/>
</head>
<body>
<div>
<script>
window.onload?=?function(){
var?link?=?document.getElementsByTagName("link")[0];
link.href?=?link.href.replace("/default/",?"/test/");
alert(document.getElementsByTagName("link")[0].href);
}
</script>
</div>
</body>
2016-11-07
XXX.setAttribute("href","xxx")或者XXX.href="xxx"